diff --git a/package-lock.json b/package-lock.json index ab1ec1024369..3ea718b72edc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,17 +7,17 @@ "name": "azure-rest-api-specs", "devDependencies": { "@azure-tools/typespec-apiview": "0.4.8", - "@azure-tools/typespec-autorest": "0.41.0", - "@azure-tools/typespec-azure-core": "0.41.0", - "@azure-tools/typespec-azure-resource-manager": "0.41.0", - "@azure-tools/typespec-client-generator-core": "0.41.3", + "@azure-tools/typespec-autorest": "0.42.0", + "@azure-tools/typespec-azure-core": "0.42.0", + "@azure-tools/typespec-azure-resource-manager": "0.42.0", + "@azure-tools/typespec-client-generator-core": "0.42.0", "@azure/avocado": "^0.8.4", - "@typespec/compiler": "0.55.0", - "@typespec/http": "0.55.0", - "@typespec/openapi": "0.55.0", - "@typespec/openapi3": "0.55.0", - "@typespec/rest": "0.55.0", - "@typespec/versioning": "0.55.0", + "@typespec/compiler": "0.56.0", + "@typespec/http": "0.56.0", + "@typespec/openapi": "0.56.0", + "@typespec/openapi3": "0.56.0", + "@typespec/rest": "0.56.0", + "@typespec/versioning": "0.56.0", "azure-rest-api-specs-eng-tools": "file:eng/tools", "prettier": "~3.2.5", "typescript": "~5.4.5" @@ -32,9 +32,9 @@ } }, "eng/tools/node_modules/@types/node": { - "version": "18.19.31", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.31.tgz", - "integrity": "sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==", + "version": "18.19.33", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.33.tgz", + "integrity": "sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A==", "dev": true, "dependencies": { "undici-types": "~5.26.4" @@ -248,59 +248,63 @@ } }, "node_modules/@azure-tools/typespec-autorest": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@azure-tools/typespec-autorest/-/typespec-autorest-0.41.0.tgz", - "integrity": "sha512-yMbzIXKO7jH2+w69nhrQoq6tsvEls1rP62bBduFNY8wGsYNirTnbyRoRmP42gG2cGoa9uXcol9fCprarKysXCw==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@azure-tools/typespec-autorest/-/typespec-autorest-0.42.0.tgz", + "integrity": "sha512-3cB5SiIbRDvGXpadnxwqsNhQ4A9pteGTHIpVlKpENpvzIoWU9phe+uBmGJDiQ/9CQPiLk7JncER95XYVOvn/vA==", "dev": true, "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "@azure-tools/typespec-azure-core": "~0.41.0", - "@azure-tools/typespec-client-generator-core": "~0.41.0", - "@typespec/compiler": "~0.55.0", - "@typespec/http": "~0.55.0", - "@typespec/openapi": "~0.55.0", - "@typespec/rest": "~0.55.0", - "@typespec/versioning": "~0.55.0" + "@azure-tools/typespec-azure-core": "~0.42.0", + "@azure-tools/typespec-client-generator-core": "~0.42.0", + "@typespec/compiler": "~0.56.0", + "@typespec/http": "~0.56.0", + "@typespec/openapi": "~0.56.0", + "@typespec/rest": "~0.56.0", + "@typespec/versioning": "~0.56.0" } }, "node_modules/@azure-tools/typespec-azure-core": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-core/-/typespec-azure-core-0.41.0.tgz", - "integrity": "sha512-bnVrLxyjhMfKv75POL3m+lWjyqpLtWYEM9t2mrhFECHfW3+gWzTKIg98oNMKLXmev/sCc9QhbkKLs72jqxNL1Q==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-core/-/typespec-azure-core-0.42.0.tgz", + "integrity": "sha512-8C96RkgSWtgqsaHRMWCd2iDltFJZTGmFQiTZazZj/uRy0Wn1ikjSriSN8t1puL5SiUPd0BVJP/YXiwAfjfZYDA==", "dev": true, "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "@typespec/compiler": "~0.55.0", - "@typespec/http": "~0.55.0", - "@typespec/rest": "~0.55.0" + "@typespec/compiler": "~0.56.0", + "@typespec/http": "~0.56.0", + "@typespec/rest": "~0.56.0" } }, "node_modules/@azure-tools/typespec-azure-resource-manager": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-resource-manager/-/typespec-azure-resource-manager-0.41.0.tgz", - "integrity": "sha512-KPeQQle+hd508bkRjWHDsUXhoLjXVJg0DQyPM9wIxf+3cE0yH0aUxWPU6aj+aTio84226ExO2Qh8IadqgoQ5qg==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-resource-manager/-/typespec-azure-resource-manager-0.42.0.tgz", + "integrity": "sha512-RCqcrhE1yniAih5vDFOC5K4MpDr9XmG8qBB39G49/KyEKnWOQ3Nwvt/6fXaU42D9X2L6kfEAIz/AdiSJ/H5O6w==", "dev": true, + "dependencies": { + "change-case": "~5.4.4", + "pluralize": "^8.0.0" + }, "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "@azure-tools/typespec-autorest": "~0.41.0", - "@azure-tools/typespec-azure-core": "~0.41.0", - "@typespec/compiler": "~0.55.0", - "@typespec/http": "~0.55.0", - "@typespec/openapi": "~0.55.0", - "@typespec/rest": "~0.55.0", - "@typespec/versioning": "~0.55.0" + "@azure-tools/typespec-autorest": "~0.42.0", + "@azure-tools/typespec-azure-core": "~0.42.0", + "@typespec/compiler": "~0.56.0", + "@typespec/http": "~0.56.0", + "@typespec/openapi": "~0.56.0", + "@typespec/rest": "~0.56.0", + "@typespec/versioning": "~0.56.0" } }, "node_modules/@azure-tools/typespec-client-generator-core": { - "version": "0.41.3", - "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.41.3.tgz", - "integrity": "sha512-f5H6gz7GCi0kUd7/8LoyJaMq68E0fNldZKQPxUIxqwlQHTFUI/7K37kCkOMNVk8gqmLgLKCShBLhE7zONKe8MA==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.42.0.tgz", + "integrity": "sha512-yjT71LdErZ4/BNwTrfvqCcaZqYhZm/E5/58LibbQ/5xJusaacBjTGe5iRpDi5Xf5ETQ6twFlZ6Y1ovWwgYDZag==", "dev": true, "dependencies": { "change-case": "~5.4.4", @@ -310,11 +314,11 @@ "node": ">=18.0.0" }, "peerDependencies": { - "@azure-tools/typespec-azure-core": "~0.41.0", - "@typespec/compiler": "~0.55.0", - "@typespec/http": "~0.55.0", - "@typespec/rest": "~0.55.0", - "@typespec/versioning": "~0.55.0" + "@azure-tools/typespec-azure-core": "~0.42.0", + "@typespec/compiler": "~0.56.0", + "@typespec/http": "~0.56.0", + "@typespec/rest": "~0.56.0", + "@typespec/versioning": "~0.56.0" } }, "node_modules/@azure-tools/typespec-validation": { @@ -1375,14 +1379,14 @@ "dev": true }, "node_modules/@typespec/compiler": { - "version": "0.55.0", - "resolved": "https://registry.npmjs.org/@typespec/compiler/-/compiler-0.55.0.tgz", - "integrity": "sha512-JxBkP7fTc3yzDYZ+Ms+ZHYlL2Ym22oloLDl6107SGaShNJBdQlabgE0aV8WvYRRBYt8g0RNb+sDLEcjvahj6Gw==", + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/@typespec/compiler/-/compiler-0.56.0.tgz", + "integrity": "sha512-K+VhXycoeqcoSGtB0/l1XYco4V2qRsCOOwqklVM4Yew7kTcKVfz7CT7a6a2OKWDMNg5iijZtRBoM5YF50XtQug==", "dev": true, "dependencies": { "@babel/code-frame": "~7.24.2", "ajv": "~8.12.0", - "change-case": "~5.4.3", + "change-case": "~5.4.4", "globby": "~14.0.1", "mustache": "~4.2.0", "picocolors": "~1.0.0", @@ -1503,34 +1507,34 @@ } }, "node_modules/@typespec/http": { - "version": "0.55.0", - "resolved": "https://registry.npmjs.org/@typespec/http/-/http-0.55.0.tgz", - "integrity": "sha512-r30RWzMTJgbyRpdtZxezlvXI/nkAvgilX1OM+s3A039lGLA+JRukgvKIZ3LaNr3lNXHiqeWQDrIZNhqBnpW1zw==", + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/@typespec/http/-/http-0.56.0.tgz", + "integrity": "sha512-f/tpHRWev9bnAtNPFkfCU/5SFou9glA/rPDY0m2W5bK6EG1/6/TKKKz5FoKPA4xvc2dQ5vu/ouGLb4i5UzXvWQ==", "dev": true, "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "@typespec/compiler": "~0.55.0" + "@typespec/compiler": "~0.56.0" } }, "node_modules/@typespec/openapi": { - "version": "0.55.0", - "resolved": "https://registry.npmjs.org/@typespec/openapi/-/openapi-0.55.0.tgz", - "integrity": "sha512-5T4VuJSOGfMFSs+1dOl3U3BC6VhKAxSTBrwcQDIEEygnqCSbj/tMFDhNfzKYKARRDotgM8ESOrZU6XH5srVR7A==", + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/@typespec/openapi/-/openapi-0.56.0.tgz", + "integrity": "sha512-q8+IHRglXBm3slvonRLSNYN2fX7plbWA+ugIiMJZTeyc3enqfxPqMGA8BCiAFV3kwP0uPPpIXbCSIVhHgkONbA==", "dev": true, "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "@typespec/compiler": "~0.55.0", - "@typespec/http": "~0.55.0" + "@typespec/compiler": "~0.56.0", + "@typespec/http": "~0.56.0" } }, "node_modules/@typespec/openapi3": { - "version": "0.55.0", - "resolved": "https://registry.npmjs.org/@typespec/openapi3/-/openapi3-0.55.0.tgz", - "integrity": "sha512-dfn/wrKSF4Ls1dWMpAguQggoc4HGx2tf3FN2xhBln6EtahNZNgN5sOE+XY0hGPI4MCE5QexMUlXSiXpxzlNA/A==", + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/@typespec/openapi3/-/openapi3-0.56.0.tgz", + "integrity": "sha512-55JPUP7dFk4iXn4fNKZEs76j7hAdlWfoMWNPsQPRJCP//KWCtNXfTP+/TTVPVv1L/6HztbXyPV0agKZwyS7gDw==", "dev": true, "dependencies": { "yaml": "~2.4.1" @@ -1539,35 +1543,35 @@ "node": ">=18.0.0" }, "peerDependencies": { - "@typespec/compiler": "~0.55.0", - "@typespec/http": "~0.55.0", - "@typespec/openapi": "~0.55.0", - "@typespec/versioning": "~0.55.0" + "@typespec/compiler": "~0.56.0", + "@typespec/http": "~0.56.0", + "@typespec/openapi": "~0.56.0", + "@typespec/versioning": "~0.56.0" } }, "node_modules/@typespec/rest": { - "version": "0.55.0", - "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.55.0.tgz", - "integrity": "sha512-RPZnx5D4xdTNiP0l++9IA8mUhnegPxetbdJ5RaG/QX2fTyF/gQ7t6AHIgdq8DfYVXqukQI/iGytJ135ObftbtQ==", + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.56.0.tgz", + "integrity": "sha512-8w4WhWDcpEQNW8bB1BHhiBxIQUChDJtyq/n9p2OI/Bm1wncd61y/ZNOtcxmlKq8uB9d+dzHiZdEfqFCR8HF8/Q==", "dev": true, "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "@typespec/compiler": "~0.55.0", - "@typespec/http": "~0.55.0" + "@typespec/compiler": "~0.56.0", + "@typespec/http": "~0.56.0" } }, "node_modules/@typespec/versioning": { - "version": "0.55.0", - "resolved": "https://registry.npmjs.org/@typespec/versioning/-/versioning-0.55.0.tgz", - "integrity": "sha512-89LTgkA3IBLnaaM4D4qfsrcEU0g3gasE1MmkrQ2HG21fYX88zKbmR1cKWeUxQx9MIXFOH4cPC9KhA/uLknRVMQ==", + "version": "0.56.0", + "resolved": "https://registry.npmjs.org/@typespec/versioning/-/versioning-0.56.0.tgz", + "integrity": "sha512-j7IN9XFyGn3LH6IOJkinEvk9sDncsxiWPULOAe0VQ+D/dtCfLawDMUALnvklMDRKeD1OOUPSCjjUAp9OB0f7YA==", "dev": true, "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "@typespec/compiler": "~0.55.0" + "@typespec/compiler": "~0.56.0" } }, "node_modules/@vitest/expect": { @@ -2747,18 +2751,6 @@ "get-func-name": "^2.0.1" } }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/magic-string": { "version": "0.30.10", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", @@ -3714,13 +3706,10 @@ ] }, "node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.6.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.1.tgz", + "integrity": "sha512-f/vbBsu+fOiYt+lmwZV0rVwJScl46HppnOA1ZvIuBWKOTlllpyJ3bfVax76/OrhCH38dyxoDIA8K7uB963IYgA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -4070,9 +4059,9 @@ } }, "node_modules/vite-node/node_modules/@types/node": { - "version": "20.12.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.8.tgz", - "integrity": "sha512-NU0rJLJnshZWdE/097cdCBbyW1h4hEg0xpovcoAQYHl8dnEyp/NAOiE45pvc+Bd1Dt+2r94v2eGFpQJ4R7g+2w==", + "version": "20.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", "dev": true, "optional": true, "peer": true, @@ -4305,12 +4294,6 @@ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/yaml": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", @@ -4410,9 +4393,9 @@ } }, "node_modules/zod": { - "version": "3.23.6", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.6.tgz", - "integrity": "sha512-RTHJlZhsRbuA8Hmp/iNL7jnfc4nZishjsanDAfEY1QpDQZCahUp3xDzl+zfweE9BklxMUcgBgS1b7Lvie/ZVwA==", + "version": "3.23.7", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.7.tgz", + "integrity": "sha512-NBeIoqbtOiUMomACV/y+V3Qfs9+Okr18vR5c/5pHClPpufWOrsx8TENboDPe265lFdfewX2yBtNTLPvnmCxwog==", "dev": true, "funding": { "url": "https://github.com/sponsors/colinhacks" diff --git a/package.json b/package.json index 5e7442bb91ba..80c21c77b07e 100644 --- a/package.json +++ b/package.json @@ -2,17 +2,17 @@ "name": "azure-rest-api-specs", "devDependencies": { "@azure-tools/typespec-apiview": "0.4.8", - "@azure-tools/typespec-autorest": "0.41.0", - "@azure-tools/typespec-azure-core": "0.41.0", - "@azure-tools/typespec-azure-resource-manager": "0.41.0", - "@azure-tools/typespec-client-generator-core": "0.41.3", + "@azure-tools/typespec-autorest": "0.42.0", + "@azure-tools/typespec-azure-core": "0.42.0", + "@azure-tools/typespec-azure-resource-manager": "0.42.0", + "@azure-tools/typespec-client-generator-core": "0.42.0", "@azure/avocado": "^0.8.4", - "@typespec/compiler": "0.55.0", - "@typespec/http": "0.55.0", - "@typespec/openapi": "0.55.0", - "@typespec/openapi3": "0.55.0", - "@typespec/rest": "0.55.0", - "@typespec/versioning": "0.55.0", + "@typespec/compiler": "0.56.0", + "@typespec/http": "0.56.0", + "@typespec/openapi": "0.56.0", + "@typespec/openapi3": "0.56.0", + "@typespec/rest": "0.56.0", + "@typespec/versioning": "0.56.0", "azure-rest-api-specs-eng-tools": "file:eng/tools", "prettier": "~3.2.5", "typescript": "~5.4.5" diff --git a/specification/ai/DocumentIntelligence/routes.tsp b/specification/ai/DocumentIntelligence/routes.tsp index 075dc3b8ccf1..4b2e61453ada 100644 --- a/specification/ai/DocumentIntelligence/routes.tsp +++ b/specification/ai/DocumentIntelligence/routes.tsp @@ -115,7 +115,7 @@ model AnalyzeFromStreamRequestParams { | "application/vnd.openxmlformats-officedocument.presentationml.presentation"; @doc("Input content.") - @body + @bodyRoot input: bytes; } @@ -169,7 +169,7 @@ interface DocumentModels { contentType: "application/json"; @doc("Analyze request parameters.") - @body + @bodyRoot analyzeRequest?: AnalyzeDocumentRequest; }, AnalyzeResultOperation @@ -186,7 +186,7 @@ interface DocumentModels { buildModel is DocumentIntelligenceLongRunningOperation< { @doc("Build request parameters.") - @body + @bodyRoot buildRequest: BuildDocumentModelRequest; }, DocumentModelBuildOperationDetails @@ -200,7 +200,7 @@ interface DocumentModels { composeModel is DocumentIntelligenceLongRunningOperation< { @doc("Compose request parameters.") - @body + @bodyRoot composeRequest: ComposeDocumentModelRequest; }, DocumentModelComposeOperationDetails @@ -216,7 +216,7 @@ interface DocumentModels { authorizeModelCopy is DocumentIntelligenceOperation< { @doc("Authorize copy request parameters.") - @body + @bodyRoot authorizeCopyRequest: AuthorizeCopyRequest; }, CopyAuthorization @@ -236,7 +236,7 @@ interface DocumentModels { modelId: string; @doc("Copy to request parameters.") - @body + @bodyRoot copyToRequest: CopyAuthorization; }, DocumentModelCopyToOperationDetails @@ -290,7 +290,7 @@ interface DocumentClassifiers { buildClassifier is DocumentIntelligenceLongRunningOperation< { @doc("Build request parameters.") - @body + @bodyRoot buildRequest: BuildDocumentClassifierRequest; }, DocumentClassifierBuildOperationDetails @@ -335,7 +335,7 @@ interface DocumentClassifiers { contentType: "application/json"; @doc("Classify request parameters.") - @body + @bodyRoot classifyRequest: ClassifyDocumentRequest; }, AnalyzeResultOperation diff --git a/specification/ai/Face/models.session.tsp b/specification/ai/Face/models.session.tsp index 0768025bed8f..0cfade5db58c 100644 --- a/specification/ai/Face/models.session.tsp +++ b/specification/ai/Face/models.session.tsp @@ -128,8 +128,14 @@ union LivenessDecision { @doc("The type of image.") union ImageType { string, + + /** Color image. */ "Color", + + /** Infrared image. */ "Infrared", + + /** Depth image. */ "Depth", } @@ -148,6 +154,8 @@ model LivenessOutputsTarget { imageType: ImageType; } +#suppress "@azure-tools/typespec-azure-core/documentation-required" "Values are self-documetning." +#suppress "@azure-tools/typespec-azure-core/documentation-required" "Values are self-documetning." @doc("The model version used for liveness classification.") union LivenessModel { string, diff --git a/specification/ai/HealthInsights/HealthInsights.Common/primitives.tsp b/specification/ai/HealthInsights/HealthInsights.Common/primitives.tsp index 626e11c0c425..8e66e939d857 100644 --- a/specification/ai/HealthInsights/HealthInsights.Common/primitives.tsp +++ b/specification/ai/HealthInsights/HealthInsights.Common/primitives.tsp @@ -33,7 +33,7 @@ alias ServiceTraits = NoRepeatableRequests & QueryParametersTrait; model HealthInsightsErrorResponse is Azure.Core.Foundations.ErrorResponse { - ...RequestIdResponseHeaderTrait; + ...RequestIdResponseHeader; } alias HealthInsightsOperations = ResourceOperations< diff --git a/specification/ai/HealthInsights/HealthInsights.OpenAPI/service.tsp b/specification/ai/HealthInsights/HealthInsights.OpenAPI/service.tsp index 58c8a63d2d99..d58ea4d9417c 100644 --- a/specification/ai/HealthInsights/HealthInsights.OpenAPI/service.tsp +++ b/specification/ai/HealthInsights/HealthInsights.OpenAPI/service.tsp @@ -23,7 +23,6 @@ namespace AzureHealthInsights; model AzureKey is ApiKeyAuth; -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" enum ApiVersion { @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2024_04_01: "2024-04-01", diff --git a/specification/ai/ImageAnalysis/main.tsp b/specification/ai/ImageAnalysis/main.tsp index f4d7878396db..d21501ee098e 100644 --- a/specification/ai/ImageAnalysis/main.tsp +++ b/specification/ai/ImageAnalysis/main.tsp @@ -33,7 +33,6 @@ https://.cognitiveservices.azure.com). ) namespace ImageAnalysis; -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" enum Versions { @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2023_10_01: "2023-10-01", diff --git a/specification/ai/ImageAnalysis/routes.tsp b/specification/ai/ImageAnalysis/routes.tsp index 1db075b7c439..7038a5d38bb7 100644 --- a/specification/ai/ImageAnalysis/routes.tsp +++ b/specification/ai/ImageAnalysis/routes.tsp @@ -82,7 +82,7 @@ op analyzeFromImageData is Azure.Core.RpcOperation< contentType: "application/octet-stream"; @doc("The image to be analyzed") - @body + @bodyRoot imageData: bytes; ...SharedAnalyzeQuery; @@ -101,7 +101,7 @@ op analyzeFromUrl is Azure.Core.RpcOperation< contentType: "application/json"; @doc("The image to be analyzed") - @body + @bodyRoot imageUrl: ImageUrl; ...SharedAnalyzeQuery; diff --git a/specification/ai/OpenAI.Assistants/client.tsp b/specification/ai/OpenAI.Assistants/client.tsp index 0b74d087a646..77c0386605a9 100644 --- a/specification/ai/OpenAI.Assistants/client.tsp +++ b/specification/ai/OpenAI.Assistants/client.tsp @@ -5,174 +5,186 @@ import "./main.tsp"; using Azure.ClientGenerator.Core; #suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI is a case-sensitive name" +namespace Azure.AI { + +} + +#suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI is a case-sensitive name" +namespace Azure.AI.OpenAI { + +} + @TypeSpec.Versioning.versioned(Azure.AI.OpenAI.Assistants.ServiceApiVersions) -namespace Azure.AI.OpenAI.Assistants; - -// Trivial response value containers should treat these containers as internal details and instead surface a shimmed -// operation that exposes the underlying data directly. -@@clientName(AssistantDeletionStatus, - "InternalAssistantDeletionStatus", - "csharp" -); -@@access(deleteAssistant, Access.internal, "csharp"); -@@clientName(deleteAssistant, "InternalDeleteAssistant", "csharp"); -@@access(AssistantFileDeletionStatus, Access.internal, "csharp"); -@@clientName(AssistantFileDeletionStatus, - "InternalAssistantFileDeletionStatus", - "csharp" -); -@@access(deleteAssistantFile, Access.internal, "csharp"); -@@clientName(deleteAssistantFile, "InternalUnlinkAssistantFile", "csharp"); -@@access(deleteThread, Access.internal, "csharp"); -@@clientName(deleteThread, "InternalDeleteThread", "csharp"); -@@access(listAssistants, Access.internal, "csharp"); -@@clientName(listAssistants, "InternalGetAssistants", "csharp"); -@@access(listAssistantFiles, Access.internal, "csharp"); -@@clientName(listAssistantFiles, "InternalGetAssistantFiles", "csharp"); -@@access(listMessageFiles, Access.internal, "csharp"); -@@clientName(listMessageFiles, "InternalGetMessageFiles", "csharp"); -@@access(listRunSteps, Access.internal, "csharp"); -@@clientName(listRunSteps, "InternalGetRunSteps", "csharp"); -@@access(listMessages, Access.internal, "csharp"); -@@clientName(listMessages, "InternalGetMessages", "csharp"); -@@access(listRuns, Access.internal, "csharp"); -@@clientName(listRuns, "InternalGetRuns", "csharp"); -@@access(FileListResponse, Access.internal, "csharp"); -@@clientName(FileListResponse, "InternalFileListResponse", "csharp"); -@@access(listFiles, Access.internal, "csharp"); -@@clientName(listFiles, "InternalListFiles", "csharp"); -@@access(FileDeletionStatus, Access.internal, "csharp"); -@@clientName(FileDeletionStatus, "InternalFileDeletionStatus", "csharp"); -@@access(deleteFile, Access.internal, "csharp"); -@@clientName(deleteFile, "InternalDeleteFile", "csharp"); - -// In addition to top-level response value containers, trivial intermediate structure -- levels of single-use model -// hierarchy that don't convey explanatory or functional benefit to consumers of the surface -- should also be -// internalized and merged into the more useful top-level type. - -// FunctionToolDefinition: merge FunctionDefinition structure to recast e.g. toolDefinition.function.name into -// toolDefinition.name - -@@access(FunctionDefinition, Access.internal); -@@clientName(FunctionDefinition, "InternalFunctionDefinition", "csharp"); -@@clientName(FunctionToolDefinition.function, "InternalFunction", "csharp"); - -// SubmitToolOutputsAction: include .tool_calls directly rather than via an intermediate .details. - -@@access(SubmitToolOutputsDetails, Access.internal); -@@clientName(SubmitToolOutputsDetails, - "InternalSubmitToolOutputsDetails", - "csharp" -); -@@clientName(SubmitToolOutputsAction.submitToolOutputs, - "InternalDetails", - "csharp" -); - -// RequiredFunctionToolCall, RunStepFunctionToolCall: include name/arguments/output directly - -@@access(RunStepFunctionToolCallDetails, Access.internal); -@@clientName(RunStepFunctionToolCallDetails, - "InternalRunStepFunctionToolCallDetails", - "csharp" -); -@@clientName(RequiredFunctionToolCall.function, "InternalDetails", "csharp"); -@@access(RequiredFunctionToolCallDetails, Access.internal); -@@clientName(RequiredFunctionToolCallDetails, - "InternalRequiredFunctionToolCallDetails", - "csharp" -); -@@clientName(RunStepFunctionToolCall.function, "InternalDetails", "csharp"); - -// RunStepCodeInterpreterToolCall: include input/outputs directly - -@@access(RunStepCodeInterpreterToolCallDetails, Access.internal); -@@clientName(RunStepCodeInterpreterToolCallDetails, - "InternalCodeInterpreterToolCallDetails", - "csharp" -); -@@clientName(RunStepCodeInterpreterToolCall.codeInterpreter, - "InternalDetails", - "csharp" -); - -// MessageTextContent: text/annotations can also merge - -@@access(MessageTextDetails, Access.internal); -@@clientName(MessageTextDetails, "InternalMessageTextDetails", "csharp"); -@@clientName(MessageTextContent.text, "InternalDetails", "csharp"); - -// MessageTextFileCitationAnnotation: file_id/quote don't need another type - -@@access(MessageTextFileCitationDetails, Access.internal); -@@clientName(MessageTextFileCitationDetails, - "InternalMessageTextFileCitationDetails", - "csharp" -); -@@clientName(MessageTextFileCitationAnnotation.fileCitation, - "InternalDetails", - "csharp" -); - -// MessageTextFilePathAnnotation: file_id doesn't need a separate details client type - -@@access(MessageTextFilePathDetails, Access.internal); -@@clientName(MessageTextFilePathDetails, - "InternalMessageTextFilePathDetails", - "csharp" -); -@@clientName(MessageTextFilePathAnnotation.filePath, - "InternalDetails", - "csharp" -); - -// MessageImageFileContent: *two* levels of intermediate structure can be squashed to bring file_id to the parent -// type. Per earlier precedent with image generation, even the introduction of more image file representations (e.g. -// base64) are better accomplished via another approach at the client layer. - -@@access(MessageImageFileDetails, Access.internal); -@@clientName(MessageImageFileDetails, - "InternalMessageImageFileDetails", - "csharp" -); -@@clientName(MessageImageFileContent.imageFile, "InternalDetails", "csharp"); -@@clientName(MessageImageFileDetails.fileId, "InternalDetails", "csharp"); - -// Several of the content item types are not intended to be used as input - -@@usage(MessageTextContent, Usage.output); -@@usage(MessageImageFileContent, Usage.output); -@@usage(MessageTextContent, Usage.output); -@@usage(MessageTextFileCitationAnnotation, Usage.output); -@@usage(MessageTextFilePathAnnotation, Usage.output); - -// Ensure some shared types remain public despite interaction with previously internalized details - -@@access(MessageTextFilePathAnnotation, Access.public); -@@access(MessageTextFileCitationAnnotation, Access.public); -@@access(ListSortOrder, Access.public); -@@access(RequiredToolCall, Access.public); -@@usage(FilePurpose, Usage.input | Usage.output); -@@usage(ListSortOrder, Usage.input | Usage.output); - -// Additional, language-specific idiomatic renames - -@@clientName(OpenAIFile, "OpenAIFile", "csharp"); -@@clientName(OpenAIFile.bytes, "Size", "csharp"); -@@clientName(FilePurpose, "OpenAIFilePurpose", "csharp"); -@@clientName(ThreadMessage.content, "ContentItems", "csharp"); -@@clientName(MessageTextDetails.value, "Text", "csharp"); -@@clientName(CreateRunOptions.`model`, "OverrideModelName", "csharp"); -@@clientName(CreateRunOptions.instructions, "OverrideInstructions", "csharp"); -@@clientName(CreateRunOptions.tools, "OverrideTools", "csharp"); -@@clientName(CreateAndRunThreadOptions.`model`, "OverrideModelName", "csharp"); -@@clientName(CreateAndRunThreadOptions.instructions, - "OverrideInstructions", - "csharp" -); -@@clientName(CreateAndRunThreadOptions.tools, "OverrideTools", "csharp"); -// From https://platform.openai.com/docs/assistants/how-it-works -// "Note that deleting an AssistantFile doesn’t delete the original File object, it simply deletes the association -// between that File and the Assistant." -@@clientName(createAssistantFile, "LinkAssistantFile", "csharp"); -// 'Unlink' counterpart already renamed for DeletionStatus merge +namespace Azure.AI.OpenAI.Assistants { + // Trivial response value containers should treat these containers as internal details and instead surface a shimmed + // operation that exposes the underlying data directly. + @@clientName(AssistantDeletionStatus, + "InternalAssistantDeletionStatus", + "csharp" + ); + @@access(deleteAssistant, Access.internal, "csharp"); + @@clientName(deleteAssistant, "InternalDeleteAssistant", "csharp"); + @@access(AssistantFileDeletionStatus, Access.internal, "csharp"); + @@clientName(AssistantFileDeletionStatus, + "InternalAssistantFileDeletionStatus", + "csharp" + ); + @@access(deleteAssistantFile, Access.internal, "csharp"); + @@clientName(deleteAssistantFile, "InternalUnlinkAssistantFile", "csharp"); + @@access(deleteThread, Access.internal, "csharp"); + @@clientName(deleteThread, "InternalDeleteThread", "csharp"); + @@access(listAssistants, Access.internal, "csharp"); + @@clientName(listAssistants, "InternalGetAssistants", "csharp"); + @@access(listAssistantFiles, Access.internal, "csharp"); + @@clientName(listAssistantFiles, "InternalGetAssistantFiles", "csharp"); + @@access(listMessageFiles, Access.internal, "csharp"); + @@clientName(listMessageFiles, "InternalGetMessageFiles", "csharp"); + @@access(listRunSteps, Access.internal, "csharp"); + @@clientName(listRunSteps, "InternalGetRunSteps", "csharp"); + @@access(listMessages, Access.internal, "csharp"); + @@clientName(listMessages, "InternalGetMessages", "csharp"); + @@access(listRuns, Access.internal, "csharp"); + @@clientName(listRuns, "InternalGetRuns", "csharp"); + @@access(FileListResponse, Access.internal, "csharp"); + @@clientName(FileListResponse, "InternalFileListResponse", "csharp"); + @@access(listFiles, Access.internal, "csharp"); + @@clientName(listFiles, "InternalListFiles", "csharp"); + @@access(FileDeletionStatus, Access.internal, "csharp"); + @@clientName(FileDeletionStatus, "InternalFileDeletionStatus", "csharp"); + @@access(deleteFile, Access.internal, "csharp"); + @@clientName(deleteFile, "InternalDeleteFile", "csharp"); + + // In addition to top-level response value containers, trivial intermediate structure -- levels of single-use model + // hierarchy that don't convey explanatory or functional benefit to consumers of the surface -- should also be + // internalized and merged into the more useful top-level type. + + // FunctionToolDefinition: merge FunctionDefinition structure to recast e.g. toolDefinition.function.name into + // toolDefinition.name + + @@access(FunctionDefinition, Access.internal); + @@clientName(FunctionDefinition, "InternalFunctionDefinition", "csharp"); + @@clientName(FunctionToolDefinition.function, "InternalFunction", "csharp"); + + // SubmitToolOutputsAction: include .tool_calls directly rather than via an intermediate .details. + + @@access(SubmitToolOutputsDetails, Access.internal); + @@clientName(SubmitToolOutputsDetails, + "InternalSubmitToolOutputsDetails", + "csharp" + ); + @@clientName(SubmitToolOutputsAction.submitToolOutputs, + "InternalDetails", + "csharp" + ); + + // RequiredFunctionToolCall, RunStepFunctionToolCall: include name/arguments/output directly + + @@access(RunStepFunctionToolCallDetails, Access.internal); + @@clientName(RunStepFunctionToolCallDetails, + "InternalRunStepFunctionToolCallDetails", + "csharp" + ); + @@clientName(RequiredFunctionToolCall.function, "InternalDetails", "csharp"); + @@access(RequiredFunctionToolCallDetails, Access.internal); + @@clientName(RequiredFunctionToolCallDetails, + "InternalRequiredFunctionToolCallDetails", + "csharp" + ); + @@clientName(RunStepFunctionToolCall.function, "InternalDetails", "csharp"); + + // RunStepCodeInterpreterToolCall: include input/outputs directly + + @@access(RunStepCodeInterpreterToolCallDetails, Access.internal); + @@clientName(RunStepCodeInterpreterToolCallDetails, + "InternalCodeInterpreterToolCallDetails", + "csharp" + ); + @@clientName(RunStepCodeInterpreterToolCall.codeInterpreter, + "InternalDetails", + "csharp" + ); + + // MessageTextContent: text/annotations can also merge + + @@access(MessageTextDetails, Access.internal); + @@clientName(MessageTextDetails, "InternalMessageTextDetails", "csharp"); + @@clientName(MessageTextContent.text, "InternalDetails", "csharp"); + + // MessageTextFileCitationAnnotation: file_id/quote don't need another type + + @@access(MessageTextFileCitationDetails, Access.internal); + @@clientName(MessageTextFileCitationDetails, + "InternalMessageTextFileCitationDetails", + "csharp" + ); + @@clientName(MessageTextFileCitationAnnotation.fileCitation, + "InternalDetails", + "csharp" + ); + + // MessageTextFilePathAnnotation: file_id doesn't need a separate details client type + + @@access(MessageTextFilePathDetails, Access.internal); + @@clientName(MessageTextFilePathDetails, + "InternalMessageTextFilePathDetails", + "csharp" + ); + @@clientName(MessageTextFilePathAnnotation.filePath, + "InternalDetails", + "csharp" + ); + + // MessageImageFileContent: *two* levels of intermediate structure can be squashed to bring file_id to the parent + // type. Per earlier precedent with image generation, even the introduction of more image file representations (e.g. + // base64) are better accomplished via another approach at the client layer. + + @@access(MessageImageFileDetails, Access.internal); + @@clientName(MessageImageFileDetails, + "InternalMessageImageFileDetails", + "csharp" + ); + @@clientName(MessageImageFileContent.imageFile, "InternalDetails", "csharp"); + @@clientName(MessageImageFileDetails.fileId, "InternalDetails", "csharp"); + + // Several of the content item types are not intended to be used as input + + @@usage(MessageTextContent, Usage.output); + @@usage(MessageImageFileContent, Usage.output); + @@usage(MessageTextContent, Usage.output); + @@usage(MessageTextFileCitationAnnotation, Usage.output); + @@usage(MessageTextFilePathAnnotation, Usage.output); + + // Ensure some shared types remain public despite interaction with previously internalized details + + @@access(MessageTextFilePathAnnotation, Access.public); + @@access(MessageTextFileCitationAnnotation, Access.public); + @@access(ListSortOrder, Access.public); + @@access(RequiredToolCall, Access.public); + @@usage(FilePurpose, Usage.input | Usage.output); + @@usage(ListSortOrder, Usage.input | Usage.output); + + // Additional, language-specific idiomatic renames + + @@clientName(OpenAIFile, "OpenAIFile", "csharp"); + @@clientName(OpenAIFile.bytes, "Size", "csharp"); + @@clientName(FilePurpose, "OpenAIFilePurpose", "csharp"); + @@clientName(ThreadMessage.content, "ContentItems", "csharp"); + @@clientName(MessageTextDetails.value, "Text", "csharp"); + @@clientName(CreateRunOptions.`model`, "OverrideModelName", "csharp"); + @@clientName(CreateRunOptions.instructions, "OverrideInstructions", "csharp"); + @@clientName(CreateRunOptions.tools, "OverrideTools", "csharp"); + @@clientName(CreateAndRunThreadOptions.`model`, + "OverrideModelName", + "csharp" + ); + @@clientName(CreateAndRunThreadOptions.instructions, + "OverrideInstructions", + "csharp" + ); + @@clientName(CreateAndRunThreadOptions.tools, "OverrideTools", "csharp"); + // From https://platform.openai.com/docs/assistants/how-it-works + // "Note that deleting an AssistantFile doesn’t delete the original File object, it simply deletes the association + // between that File and the Assistant." + @@clientName(createAssistantFile, "LinkAssistantFile", "csharp"); + // 'Unlink' counterpart already renamed for DeletionStatus merge +} diff --git a/specification/ai/OpenAI.Assistants/main.tsp b/specification/ai/OpenAI.Assistants/main.tsp index b8113066df16..ca1709c74582 100644 --- a/specification/ai/OpenAI.Assistants/main.tsp +++ b/specification/ai/OpenAI.Assistants/main.tsp @@ -14,6 +14,15 @@ using TypeSpec.Versioning; using Azure.Core; #suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI is a case-sensitive name" +namespace Azure.AI { + +} + +#suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI is a case-sensitive name" +namespace Azure.AI.OpenAI { + +} + @useAuth( ApiKeyAuth | OAuth2Auth<[ { @@ -36,11 +45,11 @@ using Azure.Core; ) @versioned(ServiceApiVersions) @doc("Azure OpenAI APIs for Assistants.") -namespace Azure.AI.OpenAI.Assistants; - -@doc("The known set of supported API versions.") -enum ServiceApiVersions { - @useDependency(Azure.Core.Versions.v1_0_Preview_2) - @doc("The initial version of Azure OpenAI Assistants that corresponds to functionality in OpenAI's first beta release.") - v2024_02_15_preview: "2024-02-15-preview", +namespace Azure.AI.OpenAI.Assistants { + @doc("The known set of supported API versions.") + enum ServiceApiVersions { + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + @doc("The initial version of Azure OpenAI Assistants that corresponds to functionality in OpenAI's first beta release.") + v2024_02_15_preview: "2024-02-15-preview", + } } diff --git a/specification/ai/OpenAI.Assistants/runs/routes.tsp b/specification/ai/OpenAI.Assistants/runs/routes.tsp index 1a4f417b33db..c55d1f9e0d74 100644 --- a/specification/ai/OpenAI.Assistants/runs/routes.tsp +++ b/specification/ai/OpenAI.Assistants/runs/routes.tsp @@ -28,7 +28,7 @@ namespace Azure.AI.OpenAI.Assistants; @added(ServiceApiVersions.v2024_02_15_preview) op createRun( @path threadId: string, - @body createRunOptions: CreateRunOptions, + @bodyRoot createRunOptions: CreateRunOptions, ): ThreadRun; /** diff --git a/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json b/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json index 2fe7dfd5b228..96874e91ca99 100644 --- a/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json +++ b/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json @@ -8372,7 +8372,24 @@ ], "x-ms-enum": { "name": "ImageType", - "modelAsString": true + "modelAsString": true, + "values": [ + { + "name": "Color", + "value": "Color", + "description": "Color image." + }, + { + "name": "Infrared", + "value": "Infrared", + "description": "Infrared image." + }, + { + "name": "Depth", + "value": "Depth", + "description": "Depth image." + } + ] } }, "LandmarkCoordinate": { diff --git a/specification/apicenter/ApiCenter.Management/Api.tsp b/specification/apicenter/ApiCenter.Management/Api.tsp index 72253660be4a..844b602d44fb 100644 --- a/specification/apicenter/ApiCenter.Management/Api.tsp +++ b/specification/apicenter/ApiCenter.Management/Api.tsp @@ -6,7 +6,6 @@ import "./Workspace.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; @@ -30,7 +29,7 @@ interface Apis { @doc("Checks if specified API exists.") @head head( - ...ResourceInstanceParameters>, + ...ResourceInstanceParameters>, ): OkResponse | ErrorResponse; @doc("Creates new or updates existing API.") createOrUpdate is ArmResourceCreateOrReplaceSync; diff --git a/specification/apicenter/ApiCenter.Management/ApiDefinition.tsp b/specification/apicenter/ApiCenter.Management/ApiDefinition.tsp index f9d3b507b1fe..c53ff8466c97 100644 --- a/specification/apicenter/ApiCenter.Management/ApiDefinition.tsp +++ b/specification/apicenter/ApiCenter.Management/ApiDefinition.tsp @@ -6,7 +6,6 @@ import "./ApiVersion.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; @@ -30,7 +29,10 @@ interface ApiDefinitions { @doc("Checks if specified API definition exists.") @head head( - ...ResourceInstanceParameters>, + ...ResourceInstanceParameters< + ApiDefinition, + Foundations.BaseParameters + >, ): OkResponse | ErrorResponse; @doc("Creates new or updates existing API definition.") createOrUpdate is ArmResourceCreateOrReplaceSync; diff --git a/specification/apicenter/ApiCenter.Management/ApiVersion.tsp b/specification/apicenter/ApiCenter.Management/ApiVersion.tsp index 191b24721e13..b2da05e68566 100644 --- a/specification/apicenter/ApiCenter.Management/ApiVersion.tsp +++ b/specification/apicenter/ApiCenter.Management/ApiVersion.tsp @@ -6,7 +6,6 @@ import "./Api.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; @@ -30,7 +29,10 @@ interface ApiVersions { @doc("Checks if specified API version exists.") @head head( - ...ResourceInstanceParameters>, + ...ResourceInstanceParameters< + ApiVersion, + Foundations.BaseParameters + >, ): OkResponse | ErrorResponse; @doc("Creates new or updates existing API version.") createOrUpdate is ArmResourceCreateOrReplaceSync; diff --git a/specification/apicenter/ApiCenter.Management/DeletedService.tsp b/specification/apicenter/ApiCenter.Management/DeletedService.tsp index ff8f7a0e7a9a..de00758db489 100644 --- a/specification/apicenter/ApiCenter.Management/DeletedService.tsp +++ b/specification/apicenter/ApiCenter.Management/DeletedService.tsp @@ -7,7 +7,6 @@ import "./Service.tsp"; using TypeSpec.Rest; using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; diff --git a/specification/apicenter/ApiCenter.Management/Deployment.tsp b/specification/apicenter/ApiCenter.Management/Deployment.tsp index 2eab2cf135a1..23676f3cf7bf 100644 --- a/specification/apicenter/ApiCenter.Management/Deployment.tsp +++ b/specification/apicenter/ApiCenter.Management/Deployment.tsp @@ -6,7 +6,6 @@ import "./Api.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; @@ -30,7 +29,10 @@ interface Deployments { @doc("Checks if specified API deployment exists.") @head head( - ...ResourceInstanceParameters>, + ...ResourceInstanceParameters< + Deployment, + Foundations.BaseParameters + >, ): OkResponse | ErrorResponse; @doc("Creates new or updates existing API deployment.") createOrUpdate is ArmResourceCreateOrReplaceSync; diff --git a/specification/apicenter/ApiCenter.Management/Environment.tsp b/specification/apicenter/ApiCenter.Management/Environment.tsp index 3825f4dd26fc..80b25db6f81d 100644 --- a/specification/apicenter/ApiCenter.Management/Environment.tsp +++ b/specification/apicenter/ApiCenter.Management/Environment.tsp @@ -6,7 +6,6 @@ import "./Workspace.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; @@ -30,7 +29,10 @@ interface Environments { @doc("Checks if specified environment exists.") @head head( - ...ResourceInstanceParameters>, + ...ResourceInstanceParameters< + Environment, + Foundations.BaseParameters + >, ): OkResponse | ErrorResponse; @doc("Creates new or updates existing environment.") createOrUpdate is ArmResourceCreateOrReplaceSync; diff --git a/specification/apicenter/ApiCenter.Management/MetadataSchema.tsp b/specification/apicenter/ApiCenter.Management/MetadataSchema.tsp index e95c4f4d3dae..420d5217eb5b 100644 --- a/specification/apicenter/ApiCenter.Management/MetadataSchema.tsp +++ b/specification/apicenter/ApiCenter.Management/MetadataSchema.tsp @@ -6,7 +6,6 @@ import "./Service.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; @@ -32,7 +31,7 @@ interface MetadataSchemas { head( ...ResourceInstanceParameters< MetadataSchema, - BaseParameters + Foundations.BaseParameters >, ): OkResponse | ErrorResponse; @doc("Creates new or updates existing metadata schema.") diff --git a/specification/apicenter/ApiCenter.Management/Service.tsp b/specification/apicenter/ApiCenter.Management/Service.tsp index 3142ab515b00..17ecb746ffa1 100644 --- a/specification/apicenter/ApiCenter.Management/Service.tsp +++ b/specification/apicenter/ApiCenter.Management/Service.tsp @@ -5,7 +5,6 @@ import "./models.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; @@ -20,7 +19,7 @@ model Service is TrackedResource { @segment("services") name: string; - ...Azure.ResourceManager.ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } @armResourceOperations diff --git a/specification/apicenter/ApiCenter.Management/Workspace.tsp b/specification/apicenter/ApiCenter.Management/Workspace.tsp index 04c4fbf4a4c4..30d15f122f3b 100644 --- a/specification/apicenter/ApiCenter.Management/Workspace.tsp +++ b/specification/apicenter/ApiCenter.Management/Workspace.tsp @@ -6,7 +6,6 @@ import "./Service.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.ApiCenter; @@ -30,7 +29,10 @@ interface Workspaces { @doc("Checks if specified workspace exists.") @head head( - ...ResourceInstanceParameters>, + ...ResourceInstanceParameters< + Workspace, + Foundations.BaseParameters + >, ): OkResponse | ErrorResponse; @doc("Creates new or updates existing workspace.") createOrUpdate is ArmResourceCreateOrReplaceSync; diff --git a/specification/apicenter/ApiCenter.Management/main.tsp b/specification/apicenter/ApiCenter.Management/main.tsp index 343fa42d52d5..72da97970e24 100644 --- a/specification/apicenter/ApiCenter.Management/main.tsp +++ b/specification/apicenter/ApiCenter.Management/main.tsp @@ -18,7 +18,6 @@ import "./Environment.tsp"; using TypeSpec.Rest; using TypeSpec.Http; using Azure.ResourceManager.Foundations; -using Azure.Core; using Azure.ResourceManager; using TypeSpec.Versioning; using Azure.ClientGenerator.Core; @@ -130,7 +129,7 @@ enum Versions { @segmentOf(TResource) @armResourceList(TResource) op ArmResourceListByParent< - TResource extends ArmResource, + TResource extends Azure.ResourceManager.Foundations.Resource, TBaseParameters = BaseParameters, TParentName extends valueof string = "", TParentFriendlyName extends valueof string = "" @@ -151,7 +150,7 @@ op ArmResourceListByParent< @get @armResourceRead(TResource) op ArmResourceRead< - TResource extends ArmResource, + TResource extends Foundations.Resource, TBaseParameters = BaseParameters >( ...ResourceInstanceParameters, @@ -169,25 +168,25 @@ op ArmResourceRead< @armResourceCreateOrUpdate(TResource) @put op ArmResourceCreateOrReplaceSync< - TResource extends ArmResource, + TResource extends Foundations.Resource, TBaseParameters = BaseParameters >( ...ResourceInstanceParameters, @doc("Resource create parameters.") - @body + @bodyRoot resource: TResource, ): ArmResourceUpdatedResponseWithEtag | ArmResourceCreatedSyncResponseWithEtag | ErrorResponse; @doc("Resource '{name}' create operation succeeded", TResource) -model ArmResourceCreatedSyncResponseWithEtag +model ArmResourceCreatedSyncResponseWithEtag is Body { ...CreatedResponse; ...Azure.Core.EtagResponseEnvelope; } @doc("Resource '{name}' update operation succeeded", TResource) -model ArmResourceUpdatedResponseWithEtag +model ArmResourceUpdatedResponseWithEtag is ArmResponseWithEtag; @doc("Azure operation completed successfully.") diff --git a/specification/apicenter/data-plane/ApiCenter.DataApi/preview/2024-02-01-preview/azure.apicenter.dataapi.json b/specification/apicenter/data-plane/ApiCenter.DataApi/preview/2024-02-01-preview/azure.apicenter.dataapi.json index d9596d47d6f6..4dde16e9291f 100644 --- a/specification/apicenter/data-plane/ApiCenter.DataApi/preview/2024-02-01-preview/azure.apicenter.dataapi.json +++ b/specification/apicenter/data-plane/ApiCenter.DataApi/preview/2024-02-01-preview/azure.apicenter.dataapi.json @@ -1755,24 +1755,6 @@ "url" ] }, - "Versions": { - "type": "string", - "description": "API versions", - "enum": [ - "2024-02-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2024_02_01_preview", - "value": "2024-02-01-preview", - "description": "Preview release version 2024-02-01-preview" - } - ] - } - }, "Workspace": { "type": "object", "description": "Workspace resource model.", diff --git a/specification/apicenter/resource-manager/Microsoft.ApiCenter/preview/2024-03-15-preview/apicenter.json b/specification/apicenter/resource-manager/Microsoft.ApiCenter/preview/2024-03-15-preview/apicenter.json index 1e7612565708..b6905c6f97f3 100644 --- a/specification/apicenter/resource-manager/Microsoft.ApiCenter/preview/2024-03-15-preview/apicenter.json +++ b/specification/apicenter/resource-manager/Microsoft.ApiCenter/preview/2024-03-15-preview/apicenter.json @@ -4884,30 +4884,6 @@ "url" ] }, - "Versions": { - "type": "string", - "description": "The available API versions.", - "enum": [ - "2024-03-01", - "2024-03-15-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2024_03_01", - "value": "2024-03-01", - "description": "The initial service version" - }, - { - "name": "v2024_03_15_preview", - "value": "2024-03-15-preview", - "description": "Azure API Center 2024-03-15-preview" - } - ] - } - }, "Workspace": { "type": "object", "description": "Workspace entity.", diff --git a/specification/apicenter/resource-manager/Microsoft.ApiCenter/stable/2024-03-01/apicenter.json b/specification/apicenter/resource-manager/Microsoft.ApiCenter/stable/2024-03-01/apicenter.json index 187db508ccfd..3362ab052d6f 100644 --- a/specification/apicenter/resource-manager/Microsoft.ApiCenter/stable/2024-03-01/apicenter.json +++ b/specification/apicenter/resource-manager/Microsoft.ApiCenter/stable/2024-03-01/apicenter.json @@ -4616,30 +4616,6 @@ "url" ] }, - "Versions": { - "type": "string", - "description": "The available API versions.", - "enum": [ - "2024-03-01", - "2024-03-15-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2024_03_01", - "value": "2024-03-01", - "description": "The initial service version" - }, - { - "name": "v2024_03_15_preview", - "value": "2024-03-15-preview", - "description": "Azure API Center 2024-03-15-preview" - } - ] - } - }, "Workspace": { "type": "object", "description": "Workspace entity.", diff --git a/specification/applicationinsights/ApplicationInsights.LiveMetrics/models.tsp b/specification/applicationinsights/ApplicationInsights.LiveMetrics/models.tsp index ef91821f5844..0d181de4d0f9 100644 --- a/specification/applicationinsights/ApplicationInsights.LiveMetrics/models.tsp +++ b/specification/applicationinsights/ApplicationInsights.LiveMetrics/models.tsp @@ -48,7 +48,7 @@ model IsSubscribedOperationRequestParameters { configurationEtag?: eTag; @doc("Data contract between Application Insights client SDK and Live Metrics. /QuickPulseService.svc/ping uses this as a backup source of machine name, instance name and invariant version.") - @body + @bodyRoot monitoringDataPoint?: MonitoringDataPoint; } @@ -95,7 +95,7 @@ model PublishOperationRequestParameters { #suppress "@azure-tools/typespec-azure-core/request-body-problem" "Need to follow the existing SDK contract." @doc("Data contract between the client and Live Metrics. /QuickPulseService.svc/ping uses this as a backup source of machine name, instance name and invariant version.") - @body + @bodyRoot monitoringDataPoints?: MonitoringDataPoint[]; } diff --git a/specification/azurelargeinstance/AzureLargeInstance.Management/AzureLargeInstance.tsp b/specification/azurelargeinstance/AzureLargeInstance.Management/AzureLargeInstance.tsp index 69ab41898d64..9f388ddbb0f2 100644 --- a/specification/azurelargeinstance/AzureLargeInstance.Management/AzureLargeInstance.tsp +++ b/specification/azurelargeinstance/AzureLargeInstance.Management/AzureLargeInstance.tsp @@ -6,7 +6,6 @@ import "./models.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using Azure.ClientGenerator.Core; @@ -52,10 +51,10 @@ operations returns various properties of each Azure Large Instance. listBySubscription is ArmListBySubscription; @doc("The operation to start an Azure Large Instance (only for compute instances)") - start is ArmResourceActionNoBody< + start is ArmResourceActionAsync< AzureLargeInstance, - {}, - OperationStatusResult + void, + Foundations.OperationStatusResult >; @doc("The operation to restart an Azure Large Instance (only for compute instances)") @@ -63,16 +62,16 @@ operations returns various properties of each Azure Large Instance. AzureLargeInstance, { /** When set to 'active', this parameter empowers the server with the ability to forcefully terminate and halt any existing processes that may be running on the server */ - @body forceParameter?: ForceState; + @bodyRoot forceParameter?: ForceState; }, - OperationStatusResult + Foundations.OperationStatusResult >; @doc("The operation to shutdown an Azure Large Instance (only for compute instances)") - shutdown is ArmResourceActionNoBody< + shutdown is ArmResourceActionAsync< AzureLargeInstance, - {}, - OperationStatusResult + void, + Foundations.OperationStatusResult >; } @@ -95,7 +94,7 @@ operations returns various properties of each Azure Large Instance. @armResourceAction(TResource) @post op ArmResourceActionNoBody< - TResource extends Azure.ResourceManager.Foundations.ArmResource, + TResource extends Azure.ResourceManager.Foundations.Resource, TRequest extends TypeSpec.Reflection.Model, TResponse extends TypeSpec.Reflection.Model | void, TBaseParameters extends TypeSpec.Reflection.Model = Azure.ResourceManager.Foundations.BaseParameters @@ -108,3 +107,8 @@ op ArmResourceActionNoBody< "application/json", "tagsParameter" ); + +// model ForceParameter { +// /** When set to 'active', this parameter empowers the server with the ability to forcefully terminate and halt any existing processes that may be running on the server */ +// forceParameter?: ForceState; +// } diff --git a/specification/azurelargeinstance/AzureLargeInstance.Management/AzureLargeStorageInstance.tsp b/specification/azurelargeinstance/AzureLargeInstance.Management/AzureLargeStorageInstance.tsp index e3239b3a46be..d24d4692bd8b 100644 --- a/specification/azurelargeinstance/AzureLargeInstance.Management/AzureLargeStorageInstance.tsp +++ b/specification/azurelargeinstance/AzureLargeInstance.Management/AzureLargeStorageInstance.tsp @@ -6,7 +6,6 @@ import "./models.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using Azure.ClientGenerator.Core; diff --git a/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2023-07-20-preview/azurelargeinstance.json b/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2023-07-20-preview/azurelargeinstance.json index 9c542e3a68c5..185bd5eca35e 100644 --- a/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2023-07-20-preview/azurelargeinstance.json +++ b/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2023-07-20-preview/azurelargeinstance.json @@ -413,7 +413,7 @@ ], "responses": { "200": { - "description": "The request has succeeded.", + "description": "Azure operation completed successfully.", "schema": { "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationStatusResult" } @@ -478,7 +478,7 @@ ], "responses": { "200": { - "description": "The request has succeeded.", + "description": "Azure operation completed successfully.", "schema": { "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationStatusResult" } @@ -1558,24 +1558,6 @@ } } } - }, - "Versions": { - "type": "string", - "description": "Azure Large Instance api versions.", - "enum": [ - "2023-07-20-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_07_20_preview", - "value": "2023-07-20-preview", - "description": "Azure Large Instance api version 2023-07-20-preview." - } - ] - } } }, "parameters": {} diff --git a/specification/batch/Azure.Batch/routes.tsp b/specification/batch/Azure.Batch/routes.tsp index 803597d80403..3cb0f122b964 100644 --- a/specification/batch/Azure.Batch/routes.tsp +++ b/specification/batch/Azure.Batch/routes.tsp @@ -113,7 +113,7 @@ to Microsoft Support engineers. @clientName("createPoolInternal", "java") createPool is CreateOperation< { - @body + @bodyRoot @doc("The Pool to be created.") pool: BatchPoolCreateContent; }, @@ -212,7 +212,7 @@ a StartTask element, then the Pool keeps the existing StartTask. updatePool is UpdateOperation< BatchPoolHeaders & { @doc("The pool properties to update.") - @body + @bodyRoot pool: BatchPoolUpdateContent; }, RequestSuccessResponseHeaders @@ -246,7 +246,7 @@ more than once every 30 seconds. BatchPoolHeaders & MinimalMetadata & { @doc("The options to use for enabling automatic scaling.") - @body + @bodyRoot content: BatchPoolEnableAutoScaleContent; }, RequestSuccessResponseHeaders @@ -267,7 +267,7 @@ scaling enabled in order to evaluate a formula. poolId: string; @doc("The options to use for evaluating the automatic scaling formula.") - @body + @bodyRoot content: BatchPoolEvaluateAutoScaleContent; }, AutoScaleRun & RequestSuccessResponseHeaders @@ -289,7 +289,7 @@ Nodes, use the Pool remove Compute Nodes API instead. BatchPoolHeaders & MinimalMetadata & { @doc("The options to use for resizing the pool.") - @body + @bodyRoot content: BatchPoolResizeContent; }, AcceptedProcessingResponseHeaders @@ -327,7 +327,7 @@ with this request, then the Batch service will remove the existing StartTask. poolId: string; @doc("The options to use for replacing properties on the pool.") - @body + @bodyRoot pool: BatchPoolReplaceContent; }, NoContentSuccessResponseHeaders @@ -345,7 +345,7 @@ Each request may remove up to 100 nodes. BatchPoolHeaders & MinimalMetadata & { @doc("The options to use for removing the node.") - @body + @bodyRoot content: BatchNodeRemoveContent; }, AcceptedProcessingResponseHeaders @@ -452,7 +452,7 @@ element, then the Job keeps the existing constraints. jobId: string; @doc("The options to use for updating the Job.") - @body + @bodyRoot job: BatchJobUpdateContent; }, RequestSuccessResponseHeaders @@ -473,7 +473,7 @@ with this request, then the Batch service will remove the existing constraints. jobId: string; @doc("A job with updated properties") - @body + @bodyRoot job: BatchJob; }, RequestSuccessResponseHeaders @@ -500,7 +500,7 @@ the request fails with status code 409. jobId: string; @doc("The options to use for disabling the Job.") - @body + @bodyRoot content: BatchJobDisableContent; }, AcceptedProcessingResponseHeaders @@ -545,7 +545,7 @@ Tasks cannot be added and any remaining active Tasks will not be scheduled. jobId: string; @doc("The options to use for terminating the Job.") - @body + @bodyRoot parameters?: BatchJobTerminateContent; }, AcceptedProcessingResponseHeaders @@ -568,7 +568,7 @@ engineers. createJob is CreateOperation< { @doc("The Job to be created.") - @body + @bodyRoot job: BatchJobCreateContent; }, {} @@ -773,7 +773,7 @@ running Jobs are unaffected. jobScheduleId: string; @doc("The options to use for updating the Job Schedule.") - @body + @bodyRoot jobSchedule: BatchJobScheduleUpdateContent; }, RequestSuccessResponseHeaders @@ -796,7 +796,7 @@ running Jobs are unaffected. jobScheduleId: string; @doc("A Job Schedule with updated properties") - @body + @bodyRoot jobSchedule: BatchJobSchedule; }, RequestSuccessResponseHeaders @@ -848,7 +848,7 @@ running Jobs are unaffected. createJobSchedule is CreateOperation< { @doc("The Job Schedule to be created.") - @body + @bodyRoot jobSchedule: BatchJobScheduleCreateContent; }, {} @@ -900,7 +900,7 @@ the Batch service and left in whatever state it was in at that time. jobId: string; @doc("The Task to be created.") - @body + @bodyRoot task: BatchTaskCreateContent; }, {} @@ -971,7 +971,7 @@ service and left in whatever state it was in at that time. jobId: string; @doc("The Tasks to be added.") - @body + @bodyRoot taskCollection: BatchTaskGroup; }, BatchTaskAddCollectionResult @@ -1053,7 +1053,7 @@ information about subtasks. taskId: string; @doc("The Task to update.") - @body + @bodyRoot task: BatchTask; }, RequestSuccessResponseHeaders @@ -1105,7 +1105,7 @@ primary task; subtasks are then terminated asynchronously in the background. @path taskId: string; }, - DataServiceResponseHeaders + NoContentResponse & DataServiceResponseHeaders >; @summary(""" @@ -1133,7 +1133,7 @@ will fail if the Job has completed (or is terminating or deleting). @path taskId: string; }, - DataServiceResponseHeaders + NoContentResponse & DataServiceResponseHeaders >; @summary("Deletes the specified Task file from the Compute Node where the Task ran.") @@ -1176,7 +1176,7 @@ format is bytes=startRange-endRange. @header("content-type") contentType: "application/octet-stream"; - @body + @bodyRoot @doc("A response containing the file content.") file: bytes; } @@ -1241,7 +1241,7 @@ running state. nodeId: string; @doc("The options to use for creating the user.") - @body + @bodyRoot user: BatchNodeUserCreateContent; }, {} @@ -1301,7 +1301,7 @@ Account on a Compute Node only when it is in the idle or running state. userName: string; @doc("The options to use for updating the user.") - @body + @bodyRoot content: BatchNodeUserUpdateContent; }, RequestSuccessResponseHeaders @@ -1346,7 +1346,7 @@ Account on a Compute Node only when it is in the idle or running state. nodeId: string; @doc("The options to use for rebooting the Compute Node.") - @body + @bodyRoot parameters?: BatchNodeRebootContent; }, AcceptedProcessingResponseHeaders @@ -1370,7 +1370,7 @@ scheduling state is enabled. nodeId: string; @doc("The options to use for disabling scheduling on the Compute Node.") - @body + @bodyRoot parameters?: BatchNodeDisableSchedulingContent; }, RequestSuccessResponseHeaders @@ -1443,7 +1443,7 @@ Protocol file. nodeId: string; @doc("The Azure Batch service log files upload options.") - @body + @bodyRoot content: UploadBatchServiceLogsContent; }, UploadBatchServiceLogsResult @@ -1571,7 +1571,7 @@ format is bytes=startRange-endRange. @header("content-type") contentType: "application/octet-stream"; - @body + @bodyRoot @doc("A response containing the file content.") file: bytes; } diff --git a/specification/batch/data-plane/Azure.Batch/preview/2024-02-01.19.0/BatchService.json b/specification/batch/data-plane/Azure.Batch/preview/2024-02-01.19.0/BatchService.json index 0bbaab972290..d48941f3dabc 100644 --- a/specification/batch/data-plane/Azure.Batch/preview/2024-02-01.19.0/BatchService.json +++ b/specification/batch/data-plane/Azure.Batch/preview/2024-02-01.19.0/BatchService.json @@ -15608,24 +15608,6 @@ } } }, - "Versions": { - "type": "string", - "description": "The Azure Batch service version.", - "enum": [ - "2024-02-01.19.0" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2024_02_01", - "value": "2024-02-01.19.0", - "description": "API Version 2024-02-01.19.0" - } - ] - } - }, "VirtualMachineConfiguration": { "type": "object", "description": "The configuration for Compute Nodes in a Pool based on the Azure Virtual\nMachines infrastructure.", diff --git a/specification/codesigning/CodeSigning.Management/CertificateProfile.tsp b/specification/codesigning/CodeSigning.Management/CertificateProfile.tsp index 221f6cc39116..55ebaa3d6001 100644 --- a/specification/codesigning/CodeSigning.Management/CertificateProfile.tsp +++ b/specification/codesigning/CodeSigning.Management/CertificateProfile.tsp @@ -7,7 +7,6 @@ import "./CodeSigningAccount.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; diff --git a/specification/codesigning/CodeSigning.Management/CodeSigningAccount.tsp b/specification/codesigning/CodeSigning.Management/CodeSigningAccount.tsp index e93de39ef2cc..4355346b7284 100644 --- a/specification/codesigning/CodeSigning.Management/CodeSigningAccount.tsp +++ b/specification/codesigning/CodeSigning.Management/CodeSigningAccount.tsp @@ -6,7 +6,6 @@ import "./models.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; diff --git a/specification/codesigning/resource-manager/Microsoft.CodeSigning/preview/2024-02-05-preview/codeSigningAccount.json b/specification/codesigning/resource-manager/Microsoft.CodeSigning/preview/2024-02-05-preview/codeSigningAccount.json index 92d3eef9970d..c39c884ded31 100644 --- a/specification/codesigning/resource-manager/Microsoft.CodeSigning/preview/2024-02-05-preview/codeSigningAccount.json +++ b/specification/codesigning/resource-manager/Microsoft.CodeSigning/preview/2024-02-05-preview/codeSigningAccount.json @@ -1390,24 +1390,6 @@ } ] } - }, - "Versions": { - "type": "string", - "description": "The available API versions.", - "enum": [ - "2024-02-05-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2024_02_05_preview", - "value": "2024-02-05-preview", - "description": "The 2024-02-05-preview API version." - } - ] - } } }, "parameters": {} diff --git a/specification/cognitiveservices/AnomalyDetector/main.tsp b/specification/cognitiveservices/AnomalyDetector/main.tsp index 98b8c9f21d4c..5172ffb61695 100644 --- a/specification/cognitiveservices/AnomalyDetector/main.tsp +++ b/specification/cognitiveservices/AnomalyDetector/main.tsp @@ -52,7 +52,6 @@ namespace AnomalyDetector; model AnomalyDetectorApiKeyAuth is ApiKeyAuth; -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" enum APIVersion { @TypeSpec.Versioning.useDependency(Azure.Core.Versions.v1_0_Preview_2) v1_1: "v1.1", diff --git a/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp b/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp index 79602cdde4a9..2c07097dba56 100644 --- a/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp +++ b/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp @@ -410,5 +410,9 @@ model ResponseError { @doc("Error code.") msErrorCode?: string; - ...ErrorResponse; + @doc("Error code.") + code: string; + + @doc("Message that explains the error that the service reported.") + message: string; } diff --git a/specification/cognitiveservices/AnomalyDetector/multivariate/routes.tsp b/specification/cognitiveservices/AnomalyDetector/multivariate/routes.tsp index a04d415149fa..9ef969f400c8 100644 --- a/specification/cognitiveservices/AnomalyDetector/multivariate/routes.tsp +++ b/specification/cognitiveservices/AnomalyDetector/multivariate/routes.tsp @@ -57,7 +57,7 @@ op trainMultivariateModel is MultivariateServiceAction< // TParams { @doc("Model information.") - @body + @bodyRoot modelInfo: ModelInfo; }, // TResponse @@ -68,7 +68,7 @@ op trainMultivariateModel is MultivariateServiceAction< @header location: string; - @body result: AnomalyDetectionModel; + @bodyRoot result: AnomalyDetectionModel; } >; @@ -143,7 +143,7 @@ op detectMultivariateBatchAnomaly( modelId: string, @doc("Request of multivariate anomaly detection.") - @body + @bodyRoot options: MultivariateBatchDetectionOptions, ): { @statusCode statusCode: 202; @@ -156,7 +156,7 @@ op detectMultivariateBatchAnomaly( @header("Operation-Location") operationLocation: string; - @body result: MultivariateDetectionResult; + @bodyRoot result: MultivariateDetectionResult; } | ResponseError; #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Does not fit any standard operation pattern" @@ -177,6 +177,6 @@ op detectMultivariateLastAnomaly( modelId: string, @doc("Request of the last detection.") - @body + @bodyRoot options: MultivariateLastDetectionOptions, ): MultivariateLastDetectionResult | ResponseError; diff --git a/specification/cognitiveservices/AnomalyDetector/univariate/routes.tsp b/specification/cognitiveservices/AnomalyDetector/univariate/routes.tsp index fad570c9f1c4..8dd789808bd0 100644 --- a/specification/cognitiveservices/AnomalyDetector/univariate/routes.tsp +++ b/specification/cognitiveservices/AnomalyDetector/univariate/routes.tsp @@ -29,7 +29,7 @@ op detectUnivariateEntireSeries is UnivariateServiceAction< // TParams { @doc("Method of univariate anomaly detection.") - @body + @bodyRoot options: UnivariateDetectionOptions; }, // TResponse @@ -48,7 +48,7 @@ op detectUnivariateLastPoint is UnivariateServiceAction< // TParams { @doc("Method of univariate anomaly detection.") - @body + @bodyRoot options: UnivariateDetectionOptions; }, // TResponse @@ -64,7 +64,7 @@ op detectUnivariateChangePoint is UnivariateServiceAction< // TParams { @doc("Method of univariate anomaly detection.") - @body + @bodyRoot options: UnivariateChangePointDetectionOptions; }, // TResponse diff --git a/specification/cognitiveservices/ContentSafety/main.tsp b/specification/cognitiveservices/ContentSafety/main.tsp index e4b418194fb5..0624fff0c638 100644 --- a/specification/cognitiveservices/ContentSafety/main.tsp +++ b/specification/cognitiveservices/ContentSafety/main.tsp @@ -37,7 +37,6 @@ https://.cognitiveservices.azure.com). @doc("Analyze harmful content") namespace ContentSafety; -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" enum Versions { @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2023_10_01: "2023-10-01", diff --git a/specification/cognitiveservices/ContentSafety/routes.tsp b/specification/cognitiveservices/ContentSafety/routes.tsp index 1b5799d772a4..41919cff48b9 100644 --- a/specification/cognitiveservices/ContentSafety/routes.tsp +++ b/specification/cognitiveservices/ContentSafety/routes.tsp @@ -20,7 +20,7 @@ interface TextOperations { @post analyzeText is Azure.Core.RpcOperation< { - @body + @bodyRoot @doc("The text analysis request.") @clientName("options", "csharp") @clientName("options", "python") @@ -37,7 +37,7 @@ interface TextOperations { @post detectTextJailbreak is Azure.Core.RpcOperation< { - @body + @bodyRoot @doc("The text jailbreak analysis request.") @clientName("options", "csharp") @clientName("options", "python") @@ -54,7 +54,7 @@ interface TextOperations { @post detectTextProtectedMaterial is Azure.Core.RpcOperation< { - @body + @bodyRoot @doc("The text protected material analysis request.") @clientName("options", "csharp") @clientName("options", "python") @@ -71,7 +71,7 @@ interface TextOperations { @post detectTextPromptInjectionOptions is Azure.Core.RpcOperation< { - @body + @bodyRoot @doc("The text prompt injection attacks analysis request.") @clientName("options", "csharp") @clientName("options", "python") @@ -90,7 +90,7 @@ interface ImageOperations { analyzeImage is Azure.Core.RpcOperation< { @doc("The image analysis request.") - @body + @bodyRoot @clientName("options", "csharp") @clientName("options", "python") @clientName("options", "java") @@ -130,7 +130,7 @@ interface TextBlocklists { TextBlocklist, { @doc("Options for adding or updating blocklist items.") - @body + @bodyRoot @clientName("options", "csharp") @clientName("options", "python") @clientName("options", "java") @@ -145,7 +145,7 @@ interface TextBlocklists { TextBlocklist, { @doc("Options for removing blocklist items.") - @body + @bodyRoot @clientName("options", "csharp") @clientName("options", "python") @clientName("options", "java") @@ -174,7 +174,7 @@ interface TextGroundednessDetectionOperations { @post detectGroundednessOptions is Azure.Core.RpcOperation< { - @body + @bodyRoot @doc("The text groundedness detection request.") @clientName("options", "csharp") @clientName("options", "python") diff --git a/specification/cognitiveservices/Language.AnalyzeText/models/sentiment.analysis.tsp b/specification/cognitiveservices/Language.AnalyzeText/models/sentiment.analysis.tsp index b51b03ab81f5..2b0d1d028d16 100644 --- a/specification/cognitiveservices/Language.AnalyzeText/models/sentiment.analysis.tsp +++ b/specification/cognitiveservices/Language.AnalyzeText/models/sentiment.analysis.tsp @@ -177,9 +177,10 @@ model TargetRelation { /** The type related to the target. */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" // defined as closed enum union TargetRelationType { - #suppress "@azure-tools/typespec-azure-core/documentation-required" + /** Assessment relation. */ assessment: "assessment", - #suppress "@azure-tools/typespec-azure-core/documentation-required" + + /** Target relation. */ target: "target", } diff --git a/specification/cognitiveservices/Language.Conversations/common.tsp b/specification/cognitiveservices/Language.Conversations/common.tsp index 8749fd8ba08d..8fea385220f2 100644 --- a/specification/cognitiveservices/Language.Conversations/common.tsp +++ b/specification/cognitiveservices/Language.Conversations/common.tsp @@ -399,9 +399,11 @@ model SourceFilter is Array; /** Set to 'OR' or 'AND' for using corresponding logical operation. */ union LogicalOperationKind { string, - #suppress "@azure-tools/typespec-azure-core/documentation-required" "The EnumMember named 'AND' should have a documentation or description, please use decorator @doc to add it." + + /** Logical AND */ AND: "AND", - #suppress "@azure-tools/typespec-azure-core/documentation-required" "The EnumMember named 'OR' should have a documentation or description, please use decorator @doc to add it." + + /** Logical OR */ OR: "OR", } diff --git a/specification/cognitiveservices/OpenAI.Inference/main.tsp b/specification/cognitiveservices/OpenAI.Inference/main.tsp index 098ca33730ba..91a66092c68f 100644 --- a/specification/cognitiveservices/OpenAI.Inference/main.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/main.tsp @@ -40,7 +40,6 @@ https://westus.api.cognitive.microsoft.com). @doc("Azure OpenAI APIs for completions and search") namespace Azure.OpenAI; -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" enum ServiceApiVersions { @useDependency(Azure.Core.Versions.v1_0_Preview_1) v2022_12_01: "2022-12-01", diff --git a/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_speech.tsp b/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_speech.tsp index b08012449a72..ab0f6c301b25 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_speech.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_speech.tsp @@ -87,6 +87,6 @@ model SpeechGenerationResponse { contentType: "application/octet-stream"; @doc("The generated audio, generated in the requested audio output format.") - @body + @bodyRoot audio: bytes; } diff --git a/specification/cognitiveservices/OpenAI.Inference/models/audio/common.tsp b/specification/cognitiveservices/OpenAI.Inference/models/audio/common.tsp index 899299988b77..5679ac33d1c9 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/audio/common.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/audio/common.tsp @@ -20,6 +20,6 @@ union AudioTaskLabel { alias AudioTextResponse = { @doc("Representation of the response data of audio text.") - @body + @bodyRoot body: string; }; diff --git a/specification/cognitiveservices/data-plane/Language/preview/2023-11-15-preview/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/preview/2023-11-15-preview/analyzeconversations.json index 8597a294e708..4484ab58dec3 100644 --- a/specification/cognitiveservices/data-plane/Language/preview/2023-11-15-preview/analyzeconversations.json +++ b/specification/cognitiveservices/data-plane/Language/preview/2023-11-15-preview/analyzeconversations.json @@ -3271,11 +3271,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } @@ -3513,11 +3515,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } diff --git a/specification/cognitiveservices/data-plane/Language/preview/2023-11-15-preview/analyzetext.json b/specification/cognitiveservices/data-plane/Language/preview/2023-11-15-preview/analyzetext.json index ab66eba4e874..741ef3c35a43 100644 --- a/specification/cognitiveservices/data-plane/Language/preview/2023-11-15-preview/analyzetext.json +++ b/specification/cognitiveservices/data-plane/Language/preview/2023-11-15-preview/analyzetext.json @@ -9010,11 +9010,13 @@ "values": [ { "name": "assessment", - "value": "assessment" + "value": "assessment", + "description": "Assessment relation." }, { "name": "target", - "value": "target" + "value": "target", + "description": "Target relation." } ] } diff --git a/specification/cognitiveservices/data-plane/Language/preview/2024-05-15-preview/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/preview/2024-05-15-preview/analyzeconversations.json index 3d8ddfd9d81a..cc500468ee76 100644 --- a/specification/cognitiveservices/data-plane/Language/preview/2024-05-15-preview/analyzeconversations.json +++ b/specification/cognitiveservices/data-plane/Language/preview/2024-05-15-preview/analyzeconversations.json @@ -3129,11 +3129,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } @@ -3371,11 +3373,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } diff --git a/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzeconversations.json index 93b58ffb3608..28dbb60e0de3 100644 --- a/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzeconversations.json +++ b/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzeconversations.json @@ -1784,11 +1784,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } @@ -2010,11 +2012,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } diff --git a/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzetext.json b/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzetext.json index e8215d3f7871..934cdfe7ae9e 100644 --- a/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzetext.json +++ b/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzetext.json @@ -4454,11 +4454,13 @@ "values": [ { "name": "assessment", - "value": "assessment" + "value": "assessment", + "description": "Assessment relation." }, { "name": "target", - "value": "target" + "value": "target", + "description": "Target relation." } ] } diff --git a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations.json index 75e6fb46f69f..680bb55d9d85 100644 --- a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations.json +++ b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations.json @@ -2461,11 +2461,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } @@ -2703,11 +2705,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } diff --git a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext.json b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext.json index 09b715f6b40b..af36218dc66e 100644 --- a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext.json +++ b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext.json @@ -4900,11 +4900,13 @@ "values": [ { "name": "assessment", - "value": "assessment" + "value": "assessment", + "description": "Assessment relation." }, { "name": "target", - "value": "target" + "value": "target", + "description": "Target relation." } ] } diff --git a/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json index af2147e67443..49ad01b16a00 100644 --- a/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json +++ b/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json @@ -2941,11 +2941,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } @@ -3183,11 +3185,13 @@ "values": [ { "name": "AND", - "value": "AND" + "value": "AND", + "description": "Logical AND" }, { "name": "OR", - "value": "OR" + "value": "OR", + "description": "Logical OR" } ] } diff --git a/specification/communication/Communication.JobRouter/models.tsp b/specification/communication/Communication.JobRouter/models.tsp index bb5ed77fe782..8632530e081b 100644 --- a/specification/communication/Communication.JobRouter/models.tsp +++ b/specification/communication/Communication.JobRouter/models.tsp @@ -1244,7 +1244,7 @@ model ReclassifyJobResult {} @doc("OK Response payload from reclassifying a job.") model ReclassifyJobResultWithOkResponse { @doc("Response payload from reclassifying a job.") - @body + @bodyRoot body: ReclassifyJobResult; @doc("Status code.") @@ -1260,7 +1260,7 @@ model CloseJobResult {} @doc("Response payload from closing a job synchronously.") model CloseJobResultWithOkResponse { @doc("Response after closing a job.") - @body + @bodyRoot body: CloseJobResult; @doc("Status code.") @@ -1276,7 +1276,7 @@ model CancelJobResult {} @doc("OK Response payload from cancelling a job.") model CancelJobResultWithOkResponse { @doc("Response after cancelling a job.") - @body + @bodyRoot body: CancelJobResult; @doc("Status code.") @@ -1292,7 +1292,7 @@ model CompleteJobResult {} @doc("OK Response payload from completing a job.") model CompleteJobResultWithOkResponse { @doc("Response after completing a job.") - @body + @bodyRoot body: CompleteJobResult; @doc("Status code.") @@ -1308,7 +1308,7 @@ model DeclineJobOfferResult {} @doc("OK Response payload from declining a job.") model DeclineJobOfferResultWithOkResponse { @doc("Response payload from declining a job.") - @body + @bodyRoot body: DeclineJobOfferResult; @doc("Status code.") diff --git a/specification/communication/Communication.JobRouter/routes.tsp b/specification/communication/Communication.JobRouter/routes.tsp index 82b60947f445..d0600261e11f 100644 --- a/specification/communication/Communication.JobRouter/routes.tsp +++ b/specification/communication/Communication.JobRouter/routes.tsp @@ -120,7 +120,7 @@ interface JobRouterOperations { RouterJob, { @doc("Request object for reclassifying a job.") - @body + @bodyRoot options?: ReclassifyJobOptions; }, ReclassifyJobResultWithOkResponse @@ -133,7 +133,7 @@ interface JobRouterOperations { RouterJob, { @doc("Request model for cancelling job.") - @body + @bodyRoot options?: CancelJobOptions; }, CancelJobResultWithOkResponse @@ -146,7 +146,7 @@ interface JobRouterOperations { RouterJobAssignment, { @doc("Request model for completing job.") - @body + @bodyRoot options?: CompleteJobOptions; }, CompleteJobResultWithOkResponse @@ -159,7 +159,7 @@ interface JobRouterOperations { RouterJobAssignment, { @doc("Request model for closing job.") - @body + @bodyRoot options?: CloseJobOptions; }, CloseJobResultWithOkResponse @@ -190,7 +190,7 @@ interface JobRouterOperations { RouterJobAssignment, { @doc("Request body for unassign route.") - @body + @bodyRoot options?: UnassignJobOptions; }, UnassignJobResult @@ -208,7 +208,7 @@ interface JobRouterOperations { RouterJobOffer, { @doc("Request model for declining offer.") - @body + @bodyRoot options?: DeclineJobOfferOptions; }, DeclineJobOfferResultWithOkResponse diff --git a/specification/communication/Communication.Messages/models.tsp b/specification/communication/Communication.Messages/models.tsp index 2681b11be167..deb3876a0910 100644 --- a/specification/communication/Communication.Messages/models.tsp +++ b/specification/communication/Communication.Messages/models.tsp @@ -328,7 +328,7 @@ model CommunicationChannel { @doc("A data stream.") model MessageDataStream { @key - @visibility("read") + @visibility("none") // this model is only used as a parameter @doc("The stream ID.") @clientName("mediaId", "java") id: string; diff --git a/specification/communitytraining/Community.Management/main.tsp b/specification/communitytraining/Community.Management/main.tsp index 7cf0f8d78ca7..bf3d917bd6ba 100644 --- a/specification/communitytraining/Community.Management/main.tsp +++ b/specification/communitytraining/Community.Management/main.tsp @@ -36,7 +36,7 @@ model CommunityTraining is TrackedResource { @path name: string; - ...ResourceSku; + ...ResourceSkuProperty; } @doc("The status of the current operation.") diff --git a/specification/communitytraining/resource-manager/Microsoft.Community/stable/2023-11-01/CommunityTrainings.json b/specification/communitytraining/resource-manager/Microsoft.Community/stable/2023-11-01/CommunityTrainings.json index b1557b2b0815..45f86ef2438f 100644 --- a/specification/communitytraining/resource-manager/Microsoft.Community/stable/2023-11-01/CommunityTrainings.json +++ b/specification/communitytraining/resource-manager/Microsoft.Community/stable/2023-11-01/CommunityTrainings.json @@ -816,24 +816,6 @@ } ] } - }, - "Versions": { - "type": "string", - "description": "Api versions", - "enum": [ - "2023-11-01" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "2023-11-01", - "value": "2023-11-01", - "description": "2023-11-01 api version" - } - ] - } } }, "parameters": {} diff --git a/specification/confidentialledger/Microsoft.CodeTransparency/models.tsp b/specification/confidentialledger/Microsoft.CodeTransparency/models.tsp index c34e560bf8a9..47f0fe623612 100644 --- a/specification/confidentialledger/Microsoft.CodeTransparency/models.tsp +++ b/specification/confidentialledger/Microsoft.CodeTransparency/models.tsp @@ -19,7 +19,7 @@ model ServiceUnavailableError { ...Foundations.ErrorResponse; } -#suppress "@azure-tools/typespec-azure-core/documentation-required" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "MUST fix in next update" @doc("The Response body of the service parameters") model ParametersResult { serviceCertificate: string; @@ -43,7 +43,7 @@ model CoseEntry { contentType: "application/cose"; @doc("A raw CoseSign1 signature") - @body + @bodyRoot body: bytes; } @@ -54,7 +54,7 @@ model RawEntry { contentType: "application/cbor"; @doc("A raw CBOR content") - @body + @bodyRoot body: bytes; } @@ -133,7 +133,6 @@ model GetOperationResult { status: OperationStatus; } -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" @doc("Possible statuses of the operation.") @lroStatus union OperationStatus { @@ -236,8 +235,8 @@ model VersionResult { scitt_version: string; } -#suppress "@azure-tools/typespec-azure-core/documentation-required" -#suppress "@azure-tools/typespec-azure-core/casing-style" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "MUST fix in next update" +#suppress "@azure-tools/typespec-azure-core/casing-style" "MUST fix in next update" @doc("The Response body of the Configuration API.") model CodeTransparencyConfiguration { policy?: CodeTransparencyConfigurationPolicy; @@ -248,23 +247,23 @@ model CodeTransparencyConfiguration { service_identifier?: string; } -#suppress "@azure-tools/typespec-azure-core/documentation-required" -#suppress "@azure-tools/typespec-azure-core/casing-style" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "MUST fix in next update" +#suppress "@azure-tools/typespec-azure-core/casing-style" "MUST fix in next update" @doc("Configuration of CCF authentication.") model CodeTransparencyConfigurationAuthentication { allow_unauthenticated: boolean; jwt?: CodeTransparencyConfigurationAuthenticationJwt; } -#suppress "@azure-tools/typespec-azure-core/documentation-required" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "MUST fix in next update" #suppress "@azure-tools/typespec-azure-core/casing-style" @doc("Configuration of JWT claims") model CodeTransparencyConfigurationAuthenticationJwt { required_claims: Record; } -#suppress "@azure-tools/typespec-azure-core/documentation-required" -#suppress "@azure-tools/typespec-azure-core/casing-style" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "MUST fix in next update" +#suppress "@azure-tools/typespec-azure-core/casing-style" "MUST fix in next update" @doc("Configuration of CCF Authentication policies.") model CodeTransparencyConfigurationPolicy { accepted_algorithms?: string[]; diff --git a/specification/confidentialledger/Microsoft.ManagedCcf/main.tsp b/specification/confidentialledger/Microsoft.ManagedCcf/main.tsp index 195a64da69fc..baafdbb556e0 100644 --- a/specification/confidentialledger/Microsoft.ManagedCcf/main.tsp +++ b/specification/confidentialledger/Microsoft.ManagedCcf/main.tsp @@ -13,7 +13,6 @@ import "./transactions.tsp"; @TypeSpec.Versioning.versioned(Microsoft.ManagedCcf.Versions) namespace Microsoft.ManagedCcf; -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" enum Versions { @TypeSpec.Versioning.useDependency(Azure.Core.Versions.v1_0_Preview_2) `2023-06-01-preview`, diff --git a/specification/confidentialledger/data-plane/Microsoft.CodeTransparency/preview/2024-01-11-preview/cts.json b/specification/confidentialledger/data-plane/Microsoft.CodeTransparency/preview/2024-01-11-preview/cts.json index e20cb398f65e..e706aef09f4c 100644 --- a/specification/confidentialledger/data-plane/Microsoft.CodeTransparency/preview/2024-01-11-preview/cts.json +++ b/specification/confidentialledger/data-plane/Microsoft.CodeTransparency/preview/2024-01-11-preview/cts.json @@ -894,24 +894,6 @@ "required": [ "scitt_version" ] - }, - "Versions": { - "type": "string", - "description": "The Microsoft.CodeTransparency service versions.", - "enum": [ - "2024-01-11-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "2024-01-11-preview", - "value": "2024-01-11-preview", - "description": "The 2024-01-11-preview version of the Microsoft.CodeTransparency service." - } - ] - } } }, "parameters": { diff --git a/specification/confidentialledger/data-plane/Microsoft.ManagedCcf/preview/2023-06-01-preview/mccfgov.json b/specification/confidentialledger/data-plane/Microsoft.ManagedCcf/preview/2023-06-01-preview/mccfgov.json index cafabab8cd9d..7e9bf462a231 100644 --- a/specification/confidentialledger/data-plane/Microsoft.ManagedCcf/preview/2023-06-01-preview/mccfgov.json +++ b/specification/confidentialledger/data-plane/Microsoft.ManagedCcf/preview/2023-06-01-preview/mccfgov.json @@ -2190,16 +2190,6 @@ ] } }, - "Versions": { - "type": "string", - "enum": [ - "2023-06-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true - } - }, "memberId": { "type": "string", "description": "Hex encoding of SHA-256 of a member certificate's fingerprint.", diff --git a/specification/containerservice/Fleet.Management/fleet.tsp b/specification/containerservice/Fleet.Management/fleet.tsp index fac6edb9e0c4..a333c7d5b36e 100644 --- a/specification/containerservice/Fleet.Management/fleet.tsp +++ b/specification/containerservice/Fleet.Management/fleet.tsp @@ -9,7 +9,6 @@ using TypeSpec.Http; using TypeSpec.Rest; using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using Azure.Core; using Azure.Core.Traits; using TypeSpec.OpenAPI; @@ -29,12 +28,12 @@ model Fleet is TrackedResource { @visibility("create", "read") name: string; - ...EntityTag; + ...EntityTagProperty; #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "https://github.com/Azure/typespec-azure/issues/2840" @added(Versions.v2023_06_15_preview) @doc("Managed identity.") - identity?: Azure.ResourceManager.Foundations.ManagedIdentityProperties; + identity?: Azure.ResourceManager.Foundations.ManagedServiceIdentity; } @doc("Fleet properties.") @@ -147,16 +146,15 @@ union FleetProvisioningState { @doc("Properties of a Fleet that can be patched.") model FleetPatch { - ...Azure.ResourceManager.Foundations.ArmTagsProperty; - // adding a response header in the model currently impacts the model used in the List result model. // omitting it for now as response headers do not impact SDK generation. // ...EtagResponseEnvelope; + ...Azure.ResourceManager.Foundations.ArmTagsProperty; #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "https://github.com/Azure/typespec-azure/issues/2840" @added(Versions.v2023_06_15_preview) @doc("Managed identity.") - identity?: Azure.ResourceManager.Foundations.ManagedIdentityProperties; + identity?: Azure.ResourceManager.Foundations.ManagedServiceIdentity; } @doc("One credential result item.") @@ -188,7 +186,7 @@ interface Fleets { @operationId("Fleets_CreateOrUpdate") create is ArmResourceCreateOrUpdateAsync< Fleet, - BaseParameters & + Azure.ResourceManager.Foundations.BaseParameters & IfMatchParameters & IfNoneMatchParameters >; @@ -199,7 +197,8 @@ interface Fleets { update is ArmCustomPatchSync< Fleet, FleetPatch, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; #suppress "@azure-tools/typespec-azure-core/no-operation-id" "Use operationId to keep same name as deprecated sync operation" @@ -215,7 +214,8 @@ interface Fleets { updateAsync is ArmCustomPatchAsync< Fleet, FleetPatch, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; #suppress "deprecated" "Existing API" @@ -224,7 +224,8 @@ interface Fleets { // All shared routes must agree on the value of the shared parameter.TypeSpec(@typespec/http/shared-inconsistency) delete is ArmResourceDeleteAsync< Fleet, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; @doc("Lists fleets in the specified subscription and resource group.") diff --git a/specification/containerservice/Fleet.Management/fleetmember.tsp b/specification/containerservice/Fleet.Management/fleetmember.tsp index f04c9a8cffa5..6a954722b77c 100644 --- a/specification/containerservice/Fleet.Management/fleetmember.tsp +++ b/specification/containerservice/Fleet.Management/fleetmember.tsp @@ -6,7 +6,6 @@ using TypeSpec.Rest; using TypeSpec.Versioning; using Azure.Core; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.OpenAPI; namespace Microsoft.ContainerService; @@ -25,7 +24,7 @@ model FleetMember is ProxyResource { @visibility("create", "read") name: string; - ...EntityTag; + ...EntityTagProperty; } scalar ClusterResourceId @@ -79,7 +78,7 @@ interface FleetMembers { create is ArmResourceCreateOrUpdateAsync< FleetMember, - BaseParameters & + Azure.ResourceManager.Foundations.BaseParameters & IfMatchParameters & IfNoneMatchParameters >; @@ -91,7 +90,8 @@ interface FleetMembers { update is ArmResourcePatchSync< FleetMember, FleetMemberProperties, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; #suppress "@azure-tools/typespec-azure-core/no-operation-id" "Use operationId to keep same name as deprecated sync operation" @@ -107,7 +107,8 @@ interface FleetMembers { updateAsync is ArmResourcePatchAsync< FleetMember, FleetMemberProperties, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; #suppress "deprecated" "Existing API" @@ -116,7 +117,8 @@ interface FleetMembers { // All shared routes must agree on the value of the shared parameter.TypeSpec(@typespec/http/shared-inconsistency) delete is ArmResourceDeleteAsync< FleetMember, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; listByParent is ArmResourceListByParent; diff --git a/specification/containerservice/Fleet.Management/helpers.tsp b/specification/containerservice/Fleet.Management/helpers.tsp index 8a2960bfe30d..1833fcf955ad 100644 --- a/specification/containerservice/Fleet.Management/helpers.tsp +++ b/specification/containerservice/Fleet.Management/helpers.tsp @@ -6,25 +6,23 @@ using TypeSpec.Rest; using TypeSpec.Versioning; using Azure.ResourceManager; using Azure.ResourceManager.Foundations; -using Azure.Core; -using Azure.Core.Traits; namespace Microsoft.ContainerService; // #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "built-in conditional request includes time based conditional headers" -alias IfMatchParameters = { +alias IfMatchParameters = { @header("If-Match") @doc("The request should only proceed if an entity matches this string.") ifMatch?: string; }; -alias IfNoneMatchParameters = { +alias IfNoneMatchParameters = { @header("If-None-Match") @doc("The request should only proceed if no entity matches this string.") ifNoneMatch?: string; }; -alias IfMatchHeadersParameters = { +alias IfMatchHeadersParameters = { ...IfMatchParameters; ...IfNoneMatchParameters; }; @@ -35,14 +33,14 @@ alias IfMatchHeadersParameters, TBaseParameters = BaseParameters >( ...ResourceInstanceParameters, @doc("The resource properties to be updated.") - @body + @bodyRoot parameters?: TPatchModel, //prevents api breaking change. properties -> parameters ): ArmResponse | ErrorResponse; @@ -59,13 +57,13 @@ op FleetCustomPatchSync< @armResourceCreateOrUpdate(TResource) @put op FleetArmResourceCreateOrUpdateAsync< - TResource extends ArmResource, + TResource extends Azure.ResourceManager.Foundations.Resource, TBaseParameters = BaseParameters >( ...ResourceInstanceParameters, @doc("Resource create parameters.") - @body + @bodyRoot parameters: TResource, //prevent api breaking change. resource -> parameters ): ArmResponse | ArmCreatedResponse | ErrorResponse; @@ -84,7 +82,7 @@ op FleetArmResourceCreateOrUpdateAsync< @armResourceDelete(TResource) @delete op FleetArmResourceDeleteAsync< - TResource extends ArmResource, + TResource extends Azure.ResourceManager.Foundations.Resource, TBaseParameters = BaseParameters >(...ResourceInstanceParameters): | ArmDeletedResponse diff --git a/specification/containerservice/Fleet.Management/update/run.tsp b/specification/containerservice/Fleet.Management/update/run.tsp index 5bf034a473b3..659fede185b6 100644 --- a/specification/containerservice/Fleet.Management/update/run.tsp +++ b/specification/containerservice/Fleet.Management/update/run.tsp @@ -9,9 +9,6 @@ using TypeSpec.Http; using TypeSpec.Rest; using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; -using Azure.Core.Traits; using TypeSpec.OpenAPI; namespace Microsoft.ContainerService; @@ -30,7 +27,7 @@ model UpdateRun is ProxyResource { @visibility("create", "read") name: string; - ...EntityTag; + ...EntityTagProperty; } @doc("The provisioning state of the UpdateRun resource.") @@ -339,7 +336,7 @@ interface UpdateRuns { createOrUpdate is ArmResourceCreateOrUpdateAsync< UpdateRun, - BaseParameters & + Azure.ResourceManager.Foundations.BaseParameters & IfMatchParameters & IfNoneMatchParameters >; @@ -348,7 +345,8 @@ interface UpdateRuns { #suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "Existing API" delete is ArmResourceDeleteAsync< UpdateRun, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; listByParent is ArmResourceListByParent; @@ -359,7 +357,8 @@ interface UpdateRuns { UpdateRun, void, UpdateRun, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; #suppress "@azure-tools/typespec-azure-resource-manager/arm-post-operation-response-codes" "Existing API" @@ -368,7 +367,8 @@ interface UpdateRuns { UpdateRun, void, UpdateRun, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; @doc("Skips one or a combination of member/group/stage/afterStageWait(s) of an update run.") @@ -377,6 +377,7 @@ interface UpdateRuns { UpdateRun, SkipProperties, UpdateRun, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; } diff --git a/specification/containerservice/Fleet.Management/update/strategy.tsp b/specification/containerservice/Fleet.Management/update/strategy.tsp index 221b3a885cbd..87fe0259b543 100644 --- a/specification/containerservice/Fleet.Management/update/strategy.tsp +++ b/specification/containerservice/Fleet.Management/update/strategy.tsp @@ -9,7 +9,6 @@ using TypeSpec.Http; using TypeSpec.Rest; using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using Azure.Core; using Azure.Core.Traits; using TypeSpec.OpenAPI; @@ -31,7 +30,7 @@ model FleetUpdateStrategy is ProxyResource { @visibility("create", "read") name: string; - ...EntityTag; + ...EntityTagProperty; } @doc("The provisioning state of the UpdateStrategy resource.") @@ -58,7 +57,7 @@ interface FleetUpdateStrategies { createOrUpdate is ArmResourceCreateOrUpdateAsync< FleetUpdateStrategy, - BaseParameters & + Azure.ResourceManager.Foundations.BaseParameters & IfMatchParameters & IfNoneMatchParameters >; @@ -73,7 +72,8 @@ interface FleetUpdateStrategies { ) delete is ArmResourceDeleteAsync< FleetUpdateStrategy, - BaseParameters & IfMatchParameters + Azure.ResourceManager.Foundations.BaseParameters & + IfMatchParameters >; listByParent is ArmResourceListByParent; diff --git a/specification/containerstorage/ContainerStorage.Management/pool.tsp b/specification/containerstorage/ContainerStorage.Management/pool.tsp index 307ba7af957e..7bcdb9fbf61c 100644 --- a/specification/containerstorage/ContainerStorage.Management/pool.tsp +++ b/specification/containerstorage/ContainerStorage.Management/pool.tsp @@ -6,7 +6,6 @@ using TypeSpec.OpenAPI; using TypeSpec.Http; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; namespace Microsoft.ContainerStorage; @@ -188,7 +187,7 @@ model Encryption { @doc("The URI of the key vault.") keyVaultUri: string; - ...ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } @doc("Elastic San Pool Properties") diff --git a/specification/containerstorage/ContainerStorage.Management/snapshot.tsp b/specification/containerstorage/ContainerStorage.Management/snapshot.tsp index 0a5da95d41c5..bd864fb92543 100644 --- a/specification/containerstorage/ContainerStorage.Management/snapshot.tsp +++ b/specification/containerstorage/ContainerStorage.Management/snapshot.tsp @@ -6,7 +6,6 @@ using TypeSpec.OpenAPI; using TypeSpec.Http; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; namespace Microsoft.ContainerStorage; diff --git a/specification/containerstorage/ContainerStorage.Management/volume.tsp b/specification/containerstorage/ContainerStorage.Management/volume.tsp index c24667542874..ebd7e7977645 100644 --- a/specification/containerstorage/ContainerStorage.Management/volume.tsp +++ b/specification/containerstorage/ContainerStorage.Management/volume.tsp @@ -6,7 +6,6 @@ using TypeSpec.OpenAPI; using TypeSpec.Http; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; namespace Microsoft.ContainerStorage; diff --git a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json index cdf0e138b5db..a0b571348b7f 100644 --- a/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json +++ b/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json @@ -1806,24 +1806,6 @@ "source" ] }, - "Versions": { - "type": "string", - "description": "Api versions", - "enum": [ - "2023-07-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "2023-07-01-preview", - "value": "2023-07-01-preview", - "description": "2023-07-01-preview preview version" - } - ] - } - }, "Volume": { "type": "object", "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", diff --git a/specification/contosowidgetmanager/Contoso.WidgetManager/main.tsp b/specification/contosowidgetmanager/Contoso.WidgetManager/main.tsp index 45bebf834f68..7e5e683af7f9 100644 --- a/specification/contosowidgetmanager/Contoso.WidgetManager/main.tsp +++ b/specification/contosowidgetmanager/Contoso.WidgetManager/main.tsp @@ -47,7 +47,7 @@ interface Widgets { @doc("Creates or updates a Widget asynchronously.") @pollingOperation(Widgets.getWidgetOperationStatus) - createOrUpdateWidget is LongRunningResourceCreateOrUpdate; + createOrUpdateWidget is StandardResourceOperations.LongRunningResourceCreateOrUpdate; @doc("Delete a Widget asynchronously.") @pollingOperation(Widgets.getWidgetOperationStatus) diff --git a/specification/contosowidgetmanager/data-plane/Azure.Contoso.WidgetManager/preview/2022-11-01-preview/widgets.json b/specification/contosowidgetmanager/data-plane/Azure.Contoso.WidgetManager/preview/2022-11-01-preview/widgets.json index 09b9e8562daf..22be02d8821e 100644 --- a/specification/contosowidgetmanager/data-plane/Azure.Contoso.WidgetManager/preview/2022-11-01-preview/widgets.json +++ b/specification/contosowidgetmanager/data-plane/Azure.Contoso.WidgetManager/preview/2022-11-01-preview/widgets.json @@ -497,24 +497,6 @@ "value" ] }, - "Versions": { - "type": "string", - "description": "Versions info.", - "enum": [ - "2022-11-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2022_11_01_Preview", - "value": "2022-11-01-preview", - "description": "The 2022-11-01-preview version." - } - ] - } - }, "WidgetSuite": { "type": "object", "description": "A widget.", diff --git a/specification/databasewatcher/DatabaseWatcher.Management/watcher.tsp b/specification/databasewatcher/DatabaseWatcher.Management/watcher.tsp index 1e3d3431dccc..2f261c2e6eb8 100644 --- a/specification/databasewatcher/DatabaseWatcher.Management/watcher.tsp +++ b/specification/databasewatcher/DatabaseWatcher.Management/watcher.tsp @@ -7,6 +7,7 @@ import "./sqlMiTarget.tsp"; import "./sqlVmTarget.tsp"; import "./sharedPrivateLinkResource.tsp"; +#suppress "@azure-tools/typespec-azure-resource-manager/arm-common-types-version" "Using invalid versions of ManagedIdentity" @service({ title: "Microsoft.DatabaseWatcher", }) @@ -39,7 +40,7 @@ model Watcher is TrackedResource { @segment("watchers") name: string; - ...ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } @doc("The RP specific properties of the resource.") diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2023-09-01-preview/Watcher.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2023-09-01-preview/Watcher.json index e0a47ffc4c19..f14d0a7c82a0 100644 --- a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2023-09-01-preview/Watcher.json +++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2023-09-01-preview/Watcher.json @@ -1606,24 +1606,6 @@ } } }, - "Versions": { - "type": "string", - "description": "Versions info.", - "enum": [ - "2023-09-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_09_01_preview", - "value": "2023-09-01-preview", - "description": "The 2023-09-01-preview version." - } - ] - } - }, "Watcher": { "type": "object", "description": "The DatabaseWatcherProviderHub resource.", diff --git a/specification/devcenter/DevCenter/DevBox/routes.tsp b/specification/devcenter/DevCenter/DevBox/routes.tsp index a281c1f4a575..9c90be75f861 100644 --- a/specification/devcenter/DevCenter/DevBox/routes.tsp +++ b/specification/devcenter/DevCenter/DevBox/routes.tsp @@ -10,6 +10,10 @@ using TypeSpec.Versioning; namespace DevCenterService; +alias DevCenterOps = DevCenterResourceOperations; + interface DevBoxes { @doc("Lists available pools.") listPools is StandardResourceOperations.ResourceList; @@ -152,7 +156,7 @@ interface DevBoxes { devBoxName: string; @doc("Represents the body request of a Dev Box creation. Dev Box Pool name is required. Optionally set the owner of the Dev Box as local administrator") - @body + @bodyRoot body: DevBox; }, DevBox | { @@ -165,7 +169,7 @@ interface DevBoxes { @header("Operation-Location") operationLocation: string; - @body body?: DevBox; + @bodyRoot body?: DevBox; } >; @@ -208,75 +212,55 @@ interface DevBoxes { @header("Operation-Location") operationLocation: string; - @body body: OperationStatus; + @bodyRoot body: OperationStatus; } | { @statusCode statusCode: 204; } >; + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Replacing Status Monitor" @doc("Starts a Dev Box.") @pollingOperation(OperationStatuses.get) @action("start") - startDevBox is StandardResourceOperations.LongRunningResourceAction< + startDevBox is DevCenterOps.LongRunningResourceAction< DevBox, {}, - { - @statusCode - statusCode: 202; - - @body - body: OperationStatus; - } + OperationStatus >; + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Replacing Status Monitor" @doc("Stops a Dev Box.") @pollingOperation(OperationStatuses.get) @action("stop") - stopDevBox is StandardResourceOperations.LongRunningResourceAction< + stopDevBox is DevCenterOps.LongRunningResourceAction< DevBox, { @doc("Optional parameter to hibernate the dev box.") @query hibernate?: boolean; }, - { - @statusCode - statusCode: 202; - - @body - body: OperationStatus; - } + OperationStatus >; + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Replacing Status Monitor" @doc("Restarts a Dev Box.") @pollingOperation(OperationStatuses.get) @action("restart") - restartDevBox is StandardResourceOperations.LongRunningResourceAction< + restartDevBox is DevCenterOps.LongRunningResourceAction< DevBox, {}, - { - @statusCode - statusCode: 202; - - @body - body: OperationStatus; - } + OperationStatus >; + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Replacing Status Monitor" @doc("Attempts automated repair steps to resolve common problems on a Dev Box. The Dev Box may restart during this operation.") @pollingOperation(OperationStatuses.get) @action("repair") @added(APIVersions.v2024_02_01) - repairDevBox is StandardResourceOperations.LongRunningResourceAction< + repairDevBox is DevCenterOps.LongRunningResourceAction< DevBox, {}, - { - @statusCode - statusCode: 202; - - @body - body: OperationStatus; - } + OperationStatus >; #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "can not be represeted by using stand operations" diff --git a/specification/devcenter/DevCenter/Environments/routes.tsp b/specification/devcenter/DevCenter/Environments/routes.tsp index dc9bc308d94c..e978d75a5638 100644 --- a/specification/devcenter/DevCenter/Environments/routes.tsp +++ b/specification/devcenter/DevCenter/Environments/routes.tsp @@ -87,7 +87,7 @@ interface Environments { environmentName: string; @doc("Represents an environment.") - @body + @bodyRoot body: Environment; }, { @@ -98,7 +98,7 @@ interface Environments { @header("Operation-Location") operationLocation: string; - @body body: Environment; + @bodyRoot body: Environment; } >; @@ -174,7 +174,7 @@ interface Environments { @statusCode statusCode: 202; - @body body: OperationStatus; + @bodyRoot body: OperationStatus; @header("Location") location: string; diff --git a/specification/devcenter/DevCenter/shared/routes.tsp b/specification/devcenter/DevCenter/shared/routes.tsp index 2a88ef3ede80..1f297805989b 100644 --- a/specification/devcenter/DevCenter/shared/routes.tsp +++ b/specification/devcenter/DevCenter/shared/routes.tsp @@ -1,5 +1,6 @@ import "@typespec/rest"; import "./models.tsp"; +import "./templates.tsp"; import "@azure-tools/typespec-azure-core"; using Azure.Core; diff --git a/specification/devcenter/DevCenter/shared/templates.tsp b/specification/devcenter/DevCenter/shared/templates.tsp new file mode 100644 index 000000000000..528e612030d2 --- /dev/null +++ b/specification/devcenter/DevCenter/shared/templates.tsp @@ -0,0 +1,64 @@ +import "@typespec/rest"; +import "@azure-tools/typespec-azure-core"; + +using Azure.Core; +using TypeSpec.Rest; +using TypeSpec.Http; + +namespace DevCenterService; + +/** + * Interface containing common resource operations. + * @template InterfaceTraits Traits applicable to the operations. + * @template ErrorResponse Error response of the operations. If not specified, the default error response is used. + */ +@Traits.Private.ensureTraitsPresent( + InterfaceTraits, + ExpectedResourceOperationTraits +) +interface DevCenterResourceOperations< + InterfaceTraits extends TypeSpec.Reflection.Model, + ErrorResponse = Azure.Core.Foundations.ErrorResponse +> { + /** + * Long-running resource action operation template. + * @template Resource Resource type. + * @template Parameters Object describing the parameters of the operation. + * @template StatusResult Object describing the status result of the operation. + * @template StatusError Object describing the status error of the operation. + * @template Traits Object describing the traits of the operation. + */ + #suppress "@azure-tools/typespec-azure-core/long-running-polling-operation-required" "Custom template" + #suppress "@azure-tools/typespec-providerhub/no-inline-model" "This operation signature is not used in Azure Resource Manager operations (yet)" + #suppress "@azure-tools/typespec-azure-resource-manager/no-response-body" "This operation must return a status monitor in its response." + @Foundations.Private.ensureVerb("LongRunningResourceAction", "POST") + @action + @actionSeparator(":") + LongRunningResourceAction< + Resource extends TypeSpec.Reflection.Model, + Parameters extends TypeSpec.Reflection.Model, + StatusMonitor extends TypeSpec.Reflection.Model, + Traits extends TypeSpec.Reflection.Model = {} + > is Foundations.ResourceOperation< + Resource, + Parameters & + Azure.Core.Traits.Private.TraitProperties< + Traits & InterfaceTraits, + Azure.Core.Traits.TraitLocation.Parameters, + Azure.Core.Traits.TraitContext.Action + >, + AcceptedResponse & + StatusMonitor & { + @pollingLocation + @doc("The location for monitoring the operation state.") + @TypeSpec.Http.header("Operation-Location") + operationLocation: ResourceLocation; + } & Azure.Core.Traits.Private.TraitProperties< + Traits & InterfaceTraits, + Azure.Core.Traits.TraitLocation.Response, + Azure.Core.Traits.TraitContext.Action + >, + Traits & InterfaceTraits, + ErrorResponse + >; +} diff --git a/specification/devcenter/data-plane/readme.md b/specification/devcenter/data-plane/readme.md index 9eda3afe0fdf..cb6982a86d5c 100644 --- a/specification/devcenter/data-plane/readme.md +++ b/specification/devcenter/data-plane/readme.md @@ -43,6 +43,8 @@ directive: reason: Requires URL format for endpoint params, which violates R2003 and causes problems with codegen - suppress: OperationIdNounVerb reason: DevBoxes and Environments are operations with multiple models. + - suppress: AvoidAnonymousTypes + reason: This rule is irrelevant for data-plane TypeSpec specs. ``` ### Tag: package-2023-10-01-preview @@ -103,6 +105,8 @@ directive: reason: Requires URL format for endpoint params, which violates R2003 and causes problems with codegen - suppress: OperationIdNounVerb reason: DevBoxes and Environments are operations with multiple models. + - suppress: AvoidAnonymousTypes + reason: This rule is irrelevant for data-plane TypeSpec specs. ``` ### Tag: 2023-01-01-preview diff --git a/specification/developersigning/DeveloperSigning/main.tsp b/specification/developersigning/DeveloperSigning/main.tsp index 047b1df9fc7d..ec078c941043 100644 --- a/specification/developersigning/DeveloperSigning/main.tsp +++ b/specification/developersigning/DeveloperSigning/main.tsp @@ -180,7 +180,7 @@ model ExtendedKeyUsage { @doc("Public root certificate from the certificate chain.") model BytesBody { @doc("The root certificate of the certificate chain of this profile.") - @body + @bodyRoot body: bytes; @doc("The content type of the x509 cert.") diff --git a/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/main.tsp b/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/main.tsp index 5173e729b8bc..96d717c0973e 100644 --- a/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/main.tsp +++ b/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/main.tsp @@ -34,7 +34,7 @@ model Pool is TrackedResource { @doc("Name of the pool. It needs to be globally unique.") name: string; - ...ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } @doc("Pool properties") @@ -473,10 +473,17 @@ interface ResourceDetails { listByPool is ArmResourceListByParent; } +/** Represents how SKU capacity scales. */ union ResourceSkuCapacityScaleType { string, + + /** Capacity scales automatically. */ "Automatic", + + /** Capactiy scales manually. */ "Manual", + + /** Capacity does not scale. */ "None", } @@ -519,9 +526,14 @@ model ResourceSkuRestrictions { reasonCode?: ResourceSkuRestrictionsReasonCode; } +/** Describes the kind of SKU restrictions that can exist */ union ResourceSkuRestrictionsType { string, + + /** SKU restricted by location. */ "Location", + + /** SKU restricted by availability zone. */ "Zone", } @@ -534,9 +546,14 @@ model ResourceSkuRestrictionInfo { zones?: string[]; } +/** Describes the reason for SKU restriction. */ union ResourceSkuRestrictionsReasonCode { string, + + /** The restriction is due to exceeding a quota limitation. */ "QuotaId", + + /** The restriction is not available for this subscription. */ "NotAvailableForSubscription", } diff --git a/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/devopsinfrastructure.json b/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/devopsinfrastructure.json index 8668c743c4a4..227e8c4736df 100644 --- a/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/devopsinfrastructure.json +++ b/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/devopsinfrastructure.json @@ -1767,24 +1767,50 @@ }, "ResourceSkuRestrictionsReasonCode": { "type": "string", + "description": "Describes the reason for SKU restriction.", "enum": [ "QuotaId", "NotAvailableForSubscription" ], "x-ms-enum": { "name": "ResourceSkuRestrictionsReasonCode", - "modelAsString": true + "modelAsString": true, + "values": [ + { + "name": "QuotaId", + "value": "QuotaId", + "description": "The restriction is due to exceeding a quota limitation." + }, + { + "name": "NotAvailableForSubscription", + "value": "NotAvailableForSubscription", + "description": "The restriction is not available for this subscription." + } + ] } }, "ResourceSkuRestrictionsType": { "type": "string", + "description": "Describes the kind of SKU restrictions that can exist", "enum": [ "Location", "Zone" ], "x-ms-enum": { "name": "ResourceSkuRestrictionsType", - "modelAsString": true + "modelAsString": true, + "values": [ + { + "name": "Location", + "value": "Location", + "description": "SKU restricted by location." + }, + { + "name": "Zone", + "value": "Zone", + "description": "SKU restricted by availability zone." + } + ] } }, "ResourceSkuZoneDetails": { diff --git a/specification/edgezones/EdgeZones.Management/main.tsp b/specification/edgezones/EdgeZones.Management/main.tsp index 6fd2691dce98..c5511b1efade 100644 --- a/specification/edgezones/EdgeZones.Management/main.tsp +++ b/specification/edgezones/EdgeZones.Management/main.tsp @@ -8,7 +8,6 @@ using TypeSpec.Http; using TypeSpec.Rest; using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; @armProviderNamespace("Microsoft.EdgeZones") @service({ @@ -121,19 +120,6 @@ model ExtendedZone is ProxyResource { name: string; } -// We will use this in an interface -#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" "All operations must be inside an interface declaration." -@autoRoute -@armResourceAction(TResource) -@post -@doc("Arm Resource Action Taking no request body object and returning result object") -op ArmResourceActionNoBodySync< - TResource extends ArmResource, - TBaseParameters = BaseParameters ->( - ...ResourceInstanceParameters, -): ArmResponse | ErrorResponse; - @doc("ExtendedZone operations") @armResourceOperations interface ExtendedZones { @@ -144,8 +130,8 @@ interface ExtendedZones { listBySubscription is ArmListBySubscription; @doc("Registers a subscription for an Extended Zone") - register is ArmResourceActionNoBodySync; + register is ArmResourceActionSync; @doc("Unregisters a subscription for an Extended Zone") - unregister is ArmResourceActionNoBodySync; + unregister is ArmResourceActionSync; } diff --git a/specification/edgezones/resource-manager/Microsoft.EdgeZones/preview/2024-04-01-preview/edgezones.json b/specification/edgezones/resource-manager/Microsoft.EdgeZones/preview/2024-04-01-preview/edgezones.json index 9b8575257b52..24673c025ff4 100644 --- a/specification/edgezones/resource-manager/Microsoft.EdgeZones/preview/2024-04-01-preview/edgezones.json +++ b/specification/edgezones/resource-manager/Microsoft.EdgeZones/preview/2024-04-01-preview/edgezones.json @@ -458,24 +458,6 @@ } ] } - }, - "Versions": { - "type": "string", - "description": "Api versions", - "enum": [ - "2024-04-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "2024-04-01-preview", - "value": "2024-04-01-preview", - "description": "2024-04-01-preview api version" - } - ] - } } }, "parameters": {} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/main.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/main.tsp index fdad98970413..5a7752667ea0 100644 --- a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/main.tsp +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/main.tsp @@ -34,7 +34,6 @@ import "./propertyNameOverride.tsp"; namespace Microsoft.EventGrid.SystemEvents { using TypeSpec.Versioning; - #suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" enum ServiceApiVersions { v2024_01_01: "2024-01-01", } diff --git a/specification/eventgrid/Azure.Messaging.EventGrid/main.tsp b/specification/eventgrid/Azure.Messaging.EventGrid/main.tsp index 2e20d1cc9db6..5c2c6f99fc19 100644 --- a/specification/eventgrid/Azure.Messaging.EventGrid/main.tsp +++ b/specification/eventgrid/Azure.Messaging.EventGrid/main.tsp @@ -46,7 +46,6 @@ namespace Microsoft.EventGrid { using Azure.Core.Foundations; using Azure; - #suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" enum ServiceApiVersions { @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2023_06_01_preview: "2023-06-01-preview", @@ -244,11 +243,11 @@ namespace Microsoft.EventGrid { contentType: "application/cloudevents+json; charset=utf-8"; @doc("Single Cloud Event being published.") - @body + @bodyRoot event: CloudEvent; }, { - @body _: PublishResult; + @bodyRoot _: PublishResult; } >; @@ -264,11 +263,11 @@ namespace Microsoft.EventGrid { #suppress "@azure-tools/typespec-azure-core/request-body-problem" "Not using a container model for CloudEvent is intentional. Went through Stewardship Board review (#21880)." @doc("Array of Cloud Events being published.") - @body + @bodyRoot events: CloudEvent[]; }, { - @body _: PublishResult; + @bodyRoot _: PublishResult; } >; @@ -303,7 +302,7 @@ namespace Microsoft.EventGrid { EventSubscription, { @doc("AcknowledgeOptions.") - @body + @bodyRoot acknowledgeOptions: AcknowledgeOptions; }, AcknowledgeResult @@ -318,7 +317,7 @@ namespace Microsoft.EventGrid { EventSubscription, { @doc("ReleaseOptions") - @body + @bodyRoot releaseOptions: ReleaseOptions; @added(ServiceApiVersions.v2023_10_01_preview) @@ -339,7 +338,7 @@ namespace Microsoft.EventGrid { EventSubscription, { @doc("RejectOptions") - @body + @bodyRoot rejectOptions: RejectOptions; }, RejectResult @@ -355,7 +354,7 @@ namespace Microsoft.EventGrid { EventSubscription, { @doc("RenewLockOptions") - @body + @bodyRoot renewLockOptions: RenewLockOptions; }, RenewCloudEventLocksResult diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/SystemEvents.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/SystemEvents.json index 84a62a7a7bd7..98ffc0458d1e 100644 --- a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/SystemEvents.json +++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/SystemEvents.json @@ -7049,22 +7049,6 @@ } } }, - "ServiceApiVersions": { - "type": "string", - "enum": [ - "2024-01-01" - ], - "x-ms-enum": { - "name": "ServiceApiVersions", - "modelAsString": true, - "values": [ - { - "name": "v2024_01_01", - "value": "2024-01-01" - } - ] - } - }, "ServiceBusActiveMessagesAvailablePeriodicNotificationsEventData": { "type": "object", "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.ActiveMessagesAvailablePeriodicNotifications event.", diff --git a/specification/iotoperationsmq/resource-manager/Microsoft.IoTOperationsMQ/preview/2023-10-04-preview/iotoperationsmq.json b/specification/iotoperationsmq/resource-manager/Microsoft.IoTOperationsMQ/preview/2023-10-04-preview/iotoperationsmq.json index bde395fc4dd4..c6b62c125dfc 100644 --- a/specification/iotoperationsmq/resource-manager/Microsoft.IoTOperationsMQ/preview/2023-10-04-preview/iotoperationsmq.json +++ b/specification/iotoperationsmq/resource-manager/Microsoft.IoTOperationsMQ/preview/2023-10-04-preview/iotoperationsmq.json @@ -9154,24 +9154,6 @@ } } }, - "Versions": { - "type": "string", - "description": "Api versions", - "enum": [ - "2023-10-04-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "2023-10-04-preview", - "value": "2023-10-04-preview", - "description": "2023-10-04-preview preview version" - } - ] - } - }, "VolumeClaimDataSource": { "type": "object", "description": "VolumeClaimDataSource properties", diff --git a/specification/kubernetesruntime/resource-manager/Microsoft.KubernetesRuntime/preview/2023-10-01-preview/kubernetesruntime.json b/specification/kubernetesruntime/resource-manager/Microsoft.KubernetesRuntime/preview/2023-10-01-preview/kubernetesruntime.json index bb8dba94f9b5..9c3b696670c1 100644 --- a/specification/kubernetesruntime/resource-manager/Microsoft.KubernetesRuntime/preview/2023-10-01-preview/kubernetesruntime.json +++ b/specification/kubernetesruntime/resource-manager/Microsoft.KubernetesRuntime/preview/2023-10-01-preview/kubernetesruntime.json @@ -1830,30 +1830,6 @@ } } }, - "Versions": { - "type": "string", - "description": "Versions of KubernetesRuntime service", - "enum": [ - "2023-10-01-preview", - "2024-03-01" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_10_01_preview", - "value": "2023-10-01-preview", - "description": "2023-10-01-preview" - }, - { - "name": "v2024_03_01", - "value": "2024-03-01", - "description": "2024-03-01, added bgpPeers field in LoadBalancer" - } - ] - } - }, "VolumeBindingMode": { "type": "string", "description": "Storage class volume binding mode", diff --git a/specification/kubernetesruntime/resource-manager/Microsoft.KubernetesRuntime/stable/2024-03-01/kubernetesruntime.json b/specification/kubernetesruntime/resource-manager/Microsoft.KubernetesRuntime/stable/2024-03-01/kubernetesruntime.json index 728fc581d26f..65aa9e986ce0 100644 --- a/specification/kubernetesruntime/resource-manager/Microsoft.KubernetesRuntime/stable/2024-03-01/kubernetesruntime.json +++ b/specification/kubernetesruntime/resource-manager/Microsoft.KubernetesRuntime/stable/2024-03-01/kubernetesruntime.json @@ -1807,30 +1807,6 @@ } } }, - "Versions": { - "type": "string", - "description": "Versions of KubernetesRuntime service", - "enum": [ - "2023-10-01-preview", - "2024-03-01" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_10_01_preview", - "value": "2023-10-01-preview", - "description": "2023-10-01-preview" - }, - { - "name": "v2024_03_01", - "value": "2024-03-01", - "description": "2024-03-01, added bgpPeers field in LoadBalancer" - } - ] - } - }, "VolumeBindingMode": { "type": "string", "description": "Storage class volume binding mode", diff --git a/specification/liftrastronomer/Astronomer.Astro.Management/main.tsp b/specification/liftrastronomer/Astronomer.Astro.Management/main.tsp index 994ec2c48770..d15a786a17fb 100644 --- a/specification/liftrastronomer/Astronomer.Astro.Management/main.tsp +++ b/specification/liftrastronomer/Astronomer.Astro.Management/main.tsp @@ -41,7 +41,7 @@ model OrganizationResource is TrackedResource { @path name: string; - ...ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } @armResourceOperations diff --git a/specification/liftrastronomer/resource-manager/Astronomer.Astro/preview/2023-08-01-preview/astronomer.json b/specification/liftrastronomer/resource-manager/Astronomer.Astro/preview/2023-08-01-preview/astronomer.json index 74a1fec76968..53e3bf9d2552 100644 --- a/specification/liftrastronomer/resource-manager/Astronomer.Astro/preview/2023-08-01-preview/astronomer.json +++ b/specification/liftrastronomer/resource-manager/Astronomer.Astro/preview/2023-08-01-preview/astronomer.json @@ -849,24 +849,6 @@ "description": "Organization properties" } } - }, - "Versions": { - "type": "string", - "description": "Supported API versions for the Astronomer.Astro resource provider.", - "enum": [ - "2023-08-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v1_preview", - "value": "2023-08-01-preview", - "description": "Dependent on Azure.ResourceManager.Versions.v1_0_Preview_1, LiftrBase.Versions.v1_preview, LiftrBase.Data.Versions.v1_preview" - } - ] - } } }, "parameters": {} diff --git a/specification/loadtestservice/LoadTestService.Management/customOperation.tsp b/specification/loadtestservice/LoadTestService.Management/customOperation.tsp index 3b30c4c510d0..06d9609a17b8 100644 --- a/specification/loadtestservice/LoadTestService.Management/customOperation.tsp +++ b/specification/loadtestservice/LoadTestService.Management/customOperation.tsp @@ -4,7 +4,6 @@ import "@azure-tools/typespec-azure-resource-manager"; using TypeSpec.Http; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; namespace Microsoft.LoadTestService; @@ -25,10 +24,10 @@ interface CustomOperations { @get @returnsDoc("Azure operation completed successfully.") ArmResourceActionSyncCustomGet< - Resource extends ArmResource, + Resource extends Azure.ResourceManager.Foundations.Resource, Request extends TypeSpec.Reflection.Model | void, Response extends TypeSpec.Reflection.Model | void, - BaseParameters = DefaultBaseParameters, + BaseParameters = Azure.ResourceManager.Foundations.DefaultBaseParameters, Parameters extends {} = {}, Error extends {} = ErrorResponse >( @@ -36,7 +35,7 @@ interface CustomOperations { ...Parameters, @doc("The content of the action request") - @body + @bodyRoot body: Request, ): Response | Error; } diff --git a/specification/loadtestservice/LoadTestService.Management/models.tsp b/specification/loadtestservice/LoadTestService.Management/models.tsp index edf0de7c90c8..77bb4b18add1 100644 --- a/specification/loadtestservice/LoadTestService.Management/models.tsp +++ b/specification/loadtestservice/LoadTestService.Management/models.tsp @@ -11,7 +11,6 @@ using Azure.Core; using Azure.ResourceManager; using OpenAPI; using Autorest; -using Azure.ResourceManager.Foundations; using Azure.ResourceManager.Private; namespace Microsoft.LoadTestService; @@ -25,7 +24,7 @@ model LoadTestResource is TrackedResource { @segment("loadTests") name: string; - ...ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } @doc("Resources provisioning states.") @@ -164,7 +163,7 @@ model CheckQuotaAvailabilityResponse { @doc("Azure Resource Manager metadata containing createdBy and modifiedBy information.") @visibility("read") - systemData?: SystemData; + systemData?: Azure.ResourceManager.Foundations.SystemData; @doc("The name of the resource.") @visibility("read") diff --git a/specification/loadtestservice/LoadTestService.Management/routes.tsp b/specification/loadtestservice/LoadTestService.Management/routes.tsp index 8c8161b5795c..1f340ab881b9 100644 --- a/specification/loadtestservice/LoadTestService.Management/routes.tsp +++ b/specification/loadtestservice/LoadTestService.Management/routes.tsp @@ -3,14 +3,8 @@ import "./customOperation.tsp"; import "@azure-tools/typespec-azure-core"; import "@azure-tools/typespec-azure-resource-manager"; -using TypeSpec.Http; -using TypeSpec.Rest; -using TypeSpec.Versioning; -using Azure.Core; using Azure.ResourceManager; using OpenAPI; -using Autorest; -using Azure.ResourceManager.Foundations; namespace Microsoft.LoadTestService; diff --git a/specification/loadtestservice/LoadTestService/routes.tsp b/specification/loadtestservice/LoadTestService/routes.tsp index e767bbc297e1..0992853d9739 100644 --- a/specification/loadtestservice/LoadTestService/routes.tsp +++ b/specification/loadtestservice/LoadTestService/routes.tsp @@ -87,7 +87,7 @@ numeric, underscore or hyphen characters. fileType?: FileType; @doc("The file content as application/octet-stream.") - @body + @bodyRoot body: bytes; }, ResourceCreatedResponse @@ -127,7 +127,7 @@ numeric, underscore or hyphen characters. testId: string; @doc("App Component model.") - @body + @bodyRoot body: TestAppComponents; }, ResourceCreatedOrOkResponse @@ -175,7 +175,7 @@ numeric, underscore or hyphen characters. testId: string; @doc("Server metric configuration model.") - @body + @bodyRoot body: TestServerMetricConfig; }, ResourceCreatedOrOkResponse @@ -305,7 +305,7 @@ numeric, underscore or hyphen characters. ...MetricDimensionsRequest; @doc("Metric dimension filter ") - @body + @bodyRoot body?: MetricRequestPayload; }, Metrics @@ -358,7 +358,7 @@ numeric, underscore or hyphen characters. testRunId: string; @doc("App Component model.") - @body + @bodyRoot body: TestRunAppComponents; }, ResourceCreatedOrOkResponse @@ -412,7 +412,7 @@ numeric, underscore or hyphen characters. testRunId: string; @doc("Server metric configuration model.") - @body + @bodyRoot body: TestRunServerMetricConfig; }, ResourceCreatedOrOkResponse diff --git a/specification/machinelearning/Azure.AI.ChatProtocol/main.tsp b/specification/machinelearning/Azure.AI.ChatProtocol/main.tsp index 45595eb0c19f..761b00f283cc 100644 --- a/specification/machinelearning/Azure.AI.ChatProtocol/main.tsp +++ b/specification/machinelearning/Azure.AI.ChatProtocol/main.tsp @@ -8,6 +8,10 @@ using TypeSpec.Http; using TypeSpec.Versioning; #suppress "@azure-tools/typespec-azure-core/casing-style" "Using the AI acronym similar to what was done for OpenAI" +namespace Azure.AI { + +} + @doc("Azure APIs for the Azure Chat protocol.") @service({ title: "Azure ML Chat", @@ -29,9 +33,8 @@ using TypeSpec.Versioning; } ) @versioned(APIVersion) -namespace Azure.AI.ChatProtocol; - -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" -enum APIVersion { - v20231001Preview: "2023-10-01-preview", +namespace Azure.AI.ChatProtocol { + enum APIVersion { + v20231001Preview: "2023-10-01-preview", + } } diff --git a/specification/machinelearningservices/AzureAI.Assets/routes.tsp b/specification/machinelearningservices/AzureAI.Assets/routes.tsp index 9f3a2025c56d..f69457dd84cd 100644 --- a/specification/machinelearningservices/AzureAI.Assets/routes.tsp +++ b/specification/machinelearningservices/AzureAI.Assets/routes.tsp @@ -29,7 +29,7 @@ interface Indexes { @path version: string; }, - Index | Foundations.ErrorResponse + Index >; #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Waiting for bug fix: https://github.com/Azure/typespec-azure-pr/issues/3739." @@ -48,10 +48,10 @@ interface Indexes { version: string; @doc("Properties of an Index Version.") - @body + @bodyRoot body: Index; }, - ResourceCreatedOrOkResponse | Foundations.ErrorResponse + ResourceCreatedOrOkResponse >; #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Need to use same model in both list calls." @@ -78,7 +78,7 @@ interface Indexes { ...StandardListQueryParameters; }, - PagedIndex | Foundations.ErrorResponse + PagedIndex >; #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Need to define route." @@ -92,7 +92,7 @@ interface Indexes { @path name: string; }, - Index | Foundations.ErrorResponse + Index >; #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Need to define route." @@ -106,7 +106,7 @@ interface Indexes { @path name: string; }, - VersionInfo | Foundations.ErrorResponse + VersionInfo >; #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Need to define route." @@ -117,6 +117,6 @@ interface Indexes { { ...StandardListQueryParameters; }, - PagedIndex | Foundations.ErrorResponse + PagedIndex >; } diff --git a/specification/machinelearningservices/data-plane/Microsoft.MachineLearningServices/preview/2024-04-01-preview/azure-ai-assets.json b/specification/machinelearningservices/data-plane/Microsoft.MachineLearningServices/preview/2024-04-01-preview/azure-ai-assets.json index 387e6029d702..6495566861c2 100644 --- a/specification/machinelearningservices/data-plane/Microsoft.MachineLearningServices/preview/2024-04-01-preview/azure-ai-assets.json +++ b/specification/machinelearningservices/data-plane/Microsoft.MachineLearningServices/preview/2024-04-01-preview/azure-ai-assets.json @@ -623,24 +623,6 @@ "required": [ "latestVersion" ] - }, - "Versions": { - "type": "string", - "description": "Azure Machine Learning Services api versions.", - "enum": [ - "2024-04-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "2024-04-01-preview", - "value": "2024-04-01-preview", - "description": "Azure Machine Learning Services api version 2024-04-01-preview." - } - ] - } } }, "parameters": { diff --git a/specification/mobilepacketcore/MobilePacketCore.Management/amfdeployment.tsp b/specification/mobilepacketcore/MobilePacketCore.Management/amfdeployment.tsp index c94e6c85989e..1c53bfd8dc56 100644 --- a/specification/mobilepacketcore/MobilePacketCore.Management/amfdeployment.tsp +++ b/specification/mobilepacketcore/MobilePacketCore.Management/amfdeployment.tsp @@ -1,17 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; -using OpenAPI; namespace Microsoft.MobilePacketCore; diff --git a/specification/mobilepacketcore/MobilePacketCore.Management/clusterservice.tsp b/specification/mobilepacketcore/MobilePacketCore.Management/clusterservice.tsp index 5ecd170dd8fe..b09fccb1e5b5 100644 --- a/specification/mobilepacketcore/MobilePacketCore.Management/clusterservice.tsp +++ b/specification/mobilepacketcore/MobilePacketCore.Management/clusterservice.tsp @@ -1,16 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; using OpenAPI; namespace Microsoft.MobilePacketCore; diff --git a/specification/mobilepacketcore/MobilePacketCore.Management/common.tsp b/specification/mobilepacketcore/MobilePacketCore.Management/common.tsp index 06e6937a8803..ab834c635adc 100644 --- a/specification/mobilepacketcore/MobilePacketCore.Management/common.tsp +++ b/specification/mobilepacketcore/MobilePacketCore.Management/common.tsp @@ -1,17 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; -using OpenAPI; namespace Microsoft.MobilePacketCore; @@ -34,18 +23,18 @@ namespace Microsoft.MobilePacketCore; @armResourceCreateOrUpdate(TResource) @put op ArmResourceCreateOrUpdate2Async< - TResource extends Azure.ResourceManager.Foundations.ArmResource, + TResource extends Azure.ResourceManager.Foundations.Resource, TBaseParameters = Azure.ResourceManager.Foundations.BaseParameters >( ...ResourceInstanceParameters, @doc("Resource create parameters.") - @body + @bodyRoot resource: TResource, ): ArmUpdatedResponse | ArmCreatedResponse | ErrorResponse; @doc("ARM resource update successful") -model ArmUpdatedResponse +model ArmUpdatedResponse is ArmResponse; @doc("Provisioning state of the resource") diff --git a/specification/mobilepacketcore/MobilePacketCore.Management/nrfdeployment.tsp b/specification/mobilepacketcore/MobilePacketCore.Management/nrfdeployment.tsp index 9272c80b5f83..e1cf5d2942ed 100644 --- a/specification/mobilepacketcore/MobilePacketCore.Management/nrfdeployment.tsp +++ b/specification/mobilepacketcore/MobilePacketCore.Management/nrfdeployment.tsp @@ -1,17 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; -using OpenAPI; namespace Microsoft.MobilePacketCore; diff --git a/specification/mobilepacketcore/MobilePacketCore.Management/nssfdeployment.tsp b/specification/mobilepacketcore/MobilePacketCore.Management/nssfdeployment.tsp index e9ec742dce8f..05842d743395 100644 --- a/specification/mobilepacketcore/MobilePacketCore.Management/nssfdeployment.tsp +++ b/specification/mobilepacketcore/MobilePacketCore.Management/nssfdeployment.tsp @@ -1,17 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; -using OpenAPI; namespace Microsoft.MobilePacketCore; diff --git a/specification/mobilepacketcore/MobilePacketCore.Management/observabilityservice.tsp b/specification/mobilepacketcore/MobilePacketCore.Management/observabilityservice.tsp index d0787197d8ba..d9dc1e6178b4 100644 --- a/specification/mobilepacketcore/MobilePacketCore.Management/observabilityservice.tsp +++ b/specification/mobilepacketcore/MobilePacketCore.Management/observabilityservice.tsp @@ -1,16 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; using OpenAPI; namespace Microsoft.MobilePacketCore; diff --git a/specification/mobilepacketcore/MobilePacketCore.Management/smfdeployment.tsp b/specification/mobilepacketcore/MobilePacketCore.Management/smfdeployment.tsp index e2e2874dc49f..77fb205802e4 100644 --- a/specification/mobilepacketcore/MobilePacketCore.Management/smfdeployment.tsp +++ b/specification/mobilepacketcore/MobilePacketCore.Management/smfdeployment.tsp @@ -1,17 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; -using OpenAPI; namespace Microsoft.MobilePacketCore; diff --git a/specification/mobilepacketcore/MobilePacketCore.Management/upfdeployment.tsp b/specification/mobilepacketcore/MobilePacketCore.Management/upfdeployment.tsp index 9d769e0433c7..6c46e948c4ad 100644 --- a/specification/mobilepacketcore/MobilePacketCore.Management/upfdeployment.tsp +++ b/specification/mobilepacketcore/MobilePacketCore.Management/upfdeployment.tsp @@ -1,17 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; -using OpenAPI; namespace Microsoft.MobilePacketCore; diff --git a/specification/mobilepacketcore/resource-manager/Microsoft.MobilePacketCore/preview/2023-10-15-preview/mobilepacketcore.json b/specification/mobilepacketcore/resource-manager/Microsoft.MobilePacketCore/preview/2023-10-15-preview/mobilepacketcore.json index e3048cda08c1..090f7ccd286c 100644 --- a/specification/mobilepacketcore/resource-manager/Microsoft.MobilePacketCore/preview/2023-10-15-preview/mobilepacketcore.json +++ b/specification/mobilepacketcore/resource-manager/Microsoft.MobilePacketCore/preview/2023-10-15-preview/mobilepacketcore.json @@ -3306,24 +3306,6 @@ "type": "string", "description": "Usage SKU Definition" }, - "Versions": { - "type": "string", - "description": "API Versions", - "enum": [ - "2023-10-15-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_10_15_preview", - "value": "2023-10-15-preview", - "description": "October 15, 2023 Preview API Version" - } - ] - } - }, "VnfAgentDeploymentIdProperty": { "type": "string", "format": "arm-id", diff --git a/specification/monitor/Microsoft.Monitor/typespec/service.tsp b/specification/monitor/Microsoft.Monitor/typespec/service.tsp index 3351f61d60fb..0cffc4c28b64 100644 --- a/specification/monitor/Microsoft.Monitor/typespec/service.tsp +++ b/specification/monitor/Microsoft.Monitor/typespec/service.tsp @@ -12,6 +12,7 @@ using Azure.Core; using Azure.ResourceManager; using OpenAPI; +#suppress "@azure-tools/typespec-azure-resource-manager/arm-common-types-version" "Mixed version" @armProviderNamespace("Microsoft.Monitor") @service({ title: "Azure Monitor Control Plane API", diff --git a/specification/monitor/resource-manager/Microsoft.Monitor/preview/2023-10-01-preview/azuremonitor.json b/specification/monitor/resource-manager/Microsoft.Monitor/preview/2023-10-01-preview/azuremonitor.json index 325a323e56b9..c15f4d78e7d5 100644 --- a/specification/monitor/resource-manager/Microsoft.Monitor/preview/2023-10-01-preview/azuremonitor.json +++ b/specification/monitor/resource-manager/Microsoft.Monitor/preview/2023-10-01-preview/azuremonitor.json @@ -1954,24 +1954,6 @@ "required": [ "endpoint" ] - }, - "Versions": { - "type": "string", - "description": "Microsoft.Monitor Versions", - "enum": [ - "2023-10-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "2023-10-01-preview", - "value": "2023-10-01-preview", - "description": "API Version 2023-10-01-preview" - } - ] - } } }, "parameters": {} diff --git a/specification/mpcnetworkfunction/MpcNetworkFunction.Management/networkfunction.tsp b/specification/mpcnetworkfunction/MpcNetworkFunction.Management/networkfunction.tsp index c8677150aeab..ce9e0924f4f9 100644 --- a/specification/mpcnetworkfunction/MpcNetworkFunction.Management/networkfunction.tsp +++ b/specification/mpcnetworkfunction/MpcNetworkFunction.Management/networkfunction.tsp @@ -1,17 +1,6 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/openapi"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Http; using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using Azure.Core; -using TypeSpec.OpenAPI; namespace Microsoft.MobilePacketCore; @@ -65,43 +54,10 @@ model NetworkFunctionResourceProperties { provisioningState?: ProvisioningState; } -/** Compliant create or update template */ -/** - * A long-running resource CreateOrUpdate (PUT) - * @template TResource the resource being patched - * @template TBaseParameters Optional. Allows overriding the operation parameters - */ -#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" "This is a valid template" -@autoRoute -@doc("Create a {name}", TResource) -@TypeSpec.OpenAPI.extension("x-ms-long-running-operation", true) -@TypeSpec.OpenAPI.extension( - "x-ms-long-running-operation-options", - { - `final-state-via`: "azure-async-operation", - } -) -@armResourceCreateOrUpdate(TResource) -@put -op ArmResourceCreateOrUpdate2Async< - TResource extends Azure.ResourceManager.Foundations.ArmResource, - TBaseParameters = Azure.ResourceManager.Foundations.BaseParameters ->( - ...ResourceInstanceParameters, - - @doc("Resource create parameters.") - @body - resource: TResource, -): ArmUpdatedResponse | ArmCreatedResponse | ErrorResponse; - -@doc("ARM resource update successful") -model ArmUpdatedResponse - is ArmResponse; - @armResourceOperations(NetworkFunctionResource) interface NetworkFunctions { get is ArmResourceRead; - createOrUpdate is ArmResourceCreateOrUpdate2Async; + createOrUpdate is ArmResourceCreateOrReplaceAsync; updateTags is ArmTagsPatchSync; delete is ArmResourceDeleteSync; listByResourceGroup is ArmResourceListByParent; diff --git a/specification/mpcnetworkfunction/resource-manager/Microsoft.MobilePacketCore/preview/2023-05-15-preview/networkfunction.json b/specification/mpcnetworkfunction/resource-manager/Microsoft.MobilePacketCore/preview/2023-05-15-preview/networkfunction.json index f3fc2c6e4ba1..152b307e1d96 100644 --- a/specification/mpcnetworkfunction/resource-manager/Microsoft.MobilePacketCore/preview/2023-05-15-preview/networkfunction.json +++ b/specification/mpcnetworkfunction/resource-manager/Microsoft.MobilePacketCore/preview/2023-05-15-preview/networkfunction.json @@ -250,13 +250,13 @@ ], "responses": { "200": { - "description": "ARM resource update successful", + "description": "Resource 'NetworkFunctionResource' update operation succeeded", "schema": { "$ref": "#/definitions/NetworkFunctionResource" } }, "201": { - "description": "Azure create operation completed successfully.", + "description": "Resource 'NetworkFunctionResource' create operation succeeded", "schema": { "$ref": "#/definitions/NetworkFunctionResource" }, @@ -754,24 +754,6 @@ } ] } - }, - "Versions": { - "type": "string", - "description": "API Versions", - "enum": [ - "2023-05-15-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_05_15_preview", - "value": "2023-05-15-preview", - "description": "May 15, 2023 Preview API Version" - } - ] - } } }, "parameters": {} diff --git a/specification/networkanalytics/NetworkAnalytics.Management/main.tsp b/specification/networkanalytics/NetworkAnalytics.Management/main.tsp index 1ff814f96bd4..a7f74cb8338b 100644 --- a/specification/networkanalytics/NetworkAnalytics.Management/main.tsp +++ b/specification/networkanalytics/NetworkAnalytics.Management/main.tsp @@ -152,7 +152,7 @@ model DataProduct is TrackedResource { @maxLength(63) name: string; - ...ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } @doc("The data product properties.") diff --git a/specification/networkanalytics/resource-manager/Microsoft.NetworkAnalytics/stable/2023-11-15/networkanalytics.json b/specification/networkanalytics/resource-manager/Microsoft.NetworkAnalytics/stable/2023-11-15/networkanalytics.json index 3e74b0ee2bf9..d778934dca55 100644 --- a/specification/networkanalytics/resource-manager/Microsoft.NetworkAnalytics/stable/2023-11-15/networkanalytics.json +++ b/specification/networkanalytics/resource-manager/Microsoft.NetworkAnalytics/stable/2023-11-15/networkanalytics.json @@ -2527,24 +2527,6 @@ "roleAssignmentId" ] }, - "Versions": { - "type": "string", - "description": "The available API versions for the Microsoft.NetworkAnalytics RP.", - "enum": [ - "2023-11-15" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_11_15", - "value": "2023-11-15", - "description": "The 2023-11-15 stable version." - } - ] - } - }, "VirtualNetworkRule": { "type": "object", "description": "Virtual Network Rule", diff --git a/specification/portalservices/CopilotSettings.Management/CopilotSettings.tsp b/specification/portalservices/CopilotSettings.Management/CopilotSettings.tsp index 6872019055d4..af1f8fce56c1 100644 --- a/specification/portalservices/CopilotSettings.Management/CopilotSettings.tsp +++ b/specification/portalservices/CopilotSettings.Management/CopilotSettings.tsp @@ -1,14 +1,5 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "./models.tsp"; - using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; namespace Microsoft.PortalServices; @@ -32,16 +23,10 @@ model CopilotSettingsResource is ProxyResource { @armResourceOperations interface CopilotSettings { get is ArmResourceRead; - createOrUpdate is ArmResourceCreateOrReplaceSync< - CopilotSettingsResource, - TenantBaseParameters - >; + createOrUpdate is ArmResourceCreateOrReplaceSync; update is ArmResourcePatchSync< CopilotSettingsResource, CopilotSettingsProperties >; - delete is ArmResourceDeleteSync< - CopilotSettingsResource, - TenantBaseParameters - >; + delete is ArmResourceDeleteSync; } diff --git a/specification/portalservices/CopilotSettings.Management/models.tsp b/specification/portalservices/CopilotSettings.Management/models.tsp index 76a5d93af0d3..d3b4e6480adb 100644 --- a/specification/portalservices/CopilotSettings.Management/models.tsp +++ b/specification/portalservices/CopilotSettings.Management/models.tsp @@ -1,14 +1,4 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - -using TypeSpec.Rest; -using TypeSpec.Versioning; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using TypeSpec.Http; namespace Microsoft.PortalServices; diff --git a/specification/portalservices/Extension.Management/ExtensionTenantCompileFile.tsp b/specification/portalservices/Extension.Management/ExtensionTenantCompileFile.tsp index b6faa5a5a0d8..d64be8f9d836 100644 --- a/specification/portalservices/Extension.Management/ExtensionTenantCompileFile.tsp +++ b/specification/portalservices/Extension.Management/ExtensionTenantCompileFile.tsp @@ -1,17 +1,8 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; import "@azure-tools/typespec-client-generator-core"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "@typespec/http"; using TypeSpec.Rest; using TypeSpec.Http; -using Azure.Core; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; -using TypeSpec.OpenAPI; using Azure.ClientGenerator.Core; namespace Microsoft.PortalServices; diff --git a/specification/portalservices/Extension.Management/main.tsp b/specification/portalservices/Extension.Management/main.tsp index d29d4aef6629..3727dd9193bc 100644 --- a/specification/portalservices/Extension.Management/main.tsp +++ b/specification/portalservices/Extension.Management/main.tsp @@ -5,10 +5,6 @@ import "@azure-tools/typespec-azure-resource-manager"; import "./models.tsp"; import "./ExtensionTenantCompileFile.tsp"; -using TypeSpec.Rest; -using TypeSpec.Http; -using Azure.ResourceManager.Foundations; -using Azure.Core; using Azure.ResourceManager; using TypeSpec.Versioning; /** diff --git a/specification/portalservices/Extension.Management/models.tsp b/specification/portalservices/Extension.Management/models.tsp index e7d72d94b795..0cb843dea6d9 100644 --- a/specification/portalservices/Extension.Management/models.tsp +++ b/specification/portalservices/Extension.Management/models.tsp @@ -1,16 +1,5 @@ -import "@typespec/http"; -import "@typespec/rest"; -import "@typespec/versioning"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - -using TypeSpec.Http; -using TypeSpec.Rest; -using TypeSpec.Versioning; using OpenAPI; -using Autorest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; namespace Microsoft.PortalServices; @@ -312,7 +301,7 @@ model ArmCommonProperties { * Metadata pertaining to creation and last modification of the resource. */ @visibility("read") - systemData?: SystemData; + systemData?: Azure.ResourceManager.Foundations.SystemData; } /** diff --git a/specification/programmableconnectivity/data-plane/Azure.ProgrammableConnectivity/preview/2024-02-09-preview/openapi.json b/specification/programmableconnectivity/data-plane/Azure.ProgrammableConnectivity/preview/2024-02-09-preview/openapi.json index 6c04aadff2f9..1f674e941505 100644 --- a/specification/programmableconnectivity/data-plane/Azure.ProgrammableConnectivity/preview/2024-02-09-preview/openapi.json +++ b/specification/programmableconnectivity/data-plane/Azure.ProgrammableConnectivity/preview/2024-02-09-preview/openapi.json @@ -429,24 +429,6 @@ } }, "definitions": { - "APCVersions": { - "type": "string", - "description": "APC Versions", - "enum": [ - "2024-02-09-preview" - ], - "x-ms-enum": { - "name": "APCVersions", - "modelAsString": true, - "values": [ - { - "name": "v2024_02_09_preview", - "value": "2024-02-09-preview", - "description": "Version 2024-02-09-preview" - } - ] - } - }, "ApcError": { "type": "object", "description": "A custom error for APC.", diff --git a/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp b/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp index 8806f8361ac6..c7a68f0284e1 100644 --- a/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp +++ b/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp @@ -50,7 +50,7 @@ alias OkResponse = { @statusCode status: 200; - @body + @bodyRoot data: T; }; @@ -253,7 +253,7 @@ Null updates are not possible. #suppress "@azure-tools/typespec-azure-core/no-unknown" "Should use unknown to model Object" @doc("The value of the attribute.") - @body + @bodyRoot body: unknown; }, EntityMutationResult, @@ -341,7 +341,7 @@ Null updates are not possible. guid: string; @doc("An array of classifications to be added.") - @body + @bodyRoot body: AtlasClassification[]; }, void, @@ -361,7 +361,7 @@ Null updates are not possible. guid: string; @doc("An array of classifications to be updated.") - @body + @bodyRoot body: AtlasClassification[]; }, void, @@ -536,7 +536,7 @@ be changed to other unique attributes) attribute?: string; @doc("An array of classification to be added.") - @body + @bodyRoot body: AtlasClassification[]; }, void, @@ -563,7 +563,7 @@ be changed to other unique attributes) attribute?: string; @doc("An array of classification to be updated.") - @body + @bodyRoot body: AtlasClassification[]; }, void, @@ -660,7 +660,7 @@ example. qualifiedName can be changed to other unique attributes) #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Should use unknown to model Object" @doc("Business metadata payload") - @body + @bodyRoot body: Record>; }, void, @@ -687,7 +687,7 @@ default is false. #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Should use unknown to model Object" @doc("BusinessMetadata payload") - @body + @bodyRoot body: Record>; }, void, @@ -712,7 +712,7 @@ default is false. #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Should use unknown to model Object" @doc("Business metadata attribute payload") - @body + @bodyRoot body: Record; }, void, @@ -737,7 +737,7 @@ default is false. #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Should use unknown to model Object" @doc("Business metadata attribute payload") - @body + @bodyRoot body: Record; }, void, @@ -753,7 +753,7 @@ default is false. {}, { @header contentType: "application/octet-stream"; - @body body: bytes; + @bodyRoot body: bytes; }, {} >; @@ -783,7 +783,7 @@ default is false. guid: string; @doc("set of labels to be deleted") - @body + @bodyRoot body?: string[]; }, void, @@ -803,7 +803,7 @@ default is false. guid: string; @doc("set of labels to be set to the entity") - @body + @bodyRoot body?: string[]; }, void, @@ -823,7 +823,7 @@ default is false. guid: string; @doc("set of labels to be added") - @body + @bodyRoot body?: string[]; }, void, @@ -864,7 +864,7 @@ be changed to other unique attributes) attribute?: string; @doc("set of labels to be deleted") - @body + @bodyRoot body?: string[]; }, void, @@ -907,7 +907,7 @@ be changed to other unique attributes) attribute?: string; @doc("set of labels to be set") - @body + @bodyRoot body?: string[]; }, void, @@ -950,7 +950,7 @@ be changed to other unique attributes) attribute?: string; @doc("set of labels to be added") - @body + @bodyRoot body?: string[]; }, void, @@ -1026,7 +1026,7 @@ and createCategories is AtlasOperation< { @doc("An array of glossary category definitions to be created.") - @body + @bodyRoot body: AtlasGlossaryCategory[]; }, OkResponse, @@ -1108,7 +1108,7 @@ updating shortDescription and longDescription for category. A map containing keys as attribute names and values as corresponding attribute values for partial update. """) - @body + @bodyRoot body: Record; }, AtlasGlossaryCategory, @@ -1256,7 +1256,7 @@ shortDescription, longDescription, abbreviation, usage and status for term. A map containing keys as attribute names and values as corresponding attribute values to be updated. """) - @body + @bodyRoot body: Record; }, AtlasGlossaryTerm, @@ -1275,7 +1275,7 @@ values to be updated. includeTermHierarchy?: boolean; @doc("An array of glossary term definitions to be created in bulk.") - @body + @bodyRoot body: AtlasGlossaryTerm[]; }, OkResponse, @@ -1332,7 +1332,7 @@ is an alternative to assign a term to multiple entities. termId: string; @doc("An array of related object IDs to which the term has to be associated.") - @body + @bodyRoot body: AtlasRelatedObjectId[]; }, void, @@ -1352,7 +1352,7 @@ is an alternative to assign a term to multiple entities. termId: string; @doc("An array of related object IDs from which the term has to be dissociated.") - @body + @bodyRoot body: AtlasRelatedObjectId[]; }, void, @@ -1550,7 +1550,7 @@ using 'ignoreTermsAndCategories=true' to reduce response body size. A map containing keys as attribute names and values as corresponding attribute values. """) - @body + @bodyRoot body: Record; }, AtlasGlossary, diff --git a/specification/purviewpolicy/PurviewPolicy.Management/policy.tsp b/specification/purviewpolicy/PurviewPolicy.Management/policy.tsp index f8a60cbeb30e..a31a431669fc 100644 --- a/specification/purviewpolicy/PurviewPolicy.Management/policy.tsp +++ b/specification/purviewpolicy/PurviewPolicy.Management/policy.tsp @@ -70,7 +70,7 @@ model PolicyList is Azure.Core.Page; #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Special ARM resource with no property bag" @extensionResource @segment("policies") -model Policy extends Azure.ResourceManager.Foundations.ProxyResourceBase { +model Policy extends Azure.ResourceManager.Foundations.ProxyResource { /** The policy kind */ kind?: string; diff --git a/specification/quantum/Quantum.Workspace/operations/storage.tsp b/specification/quantum/Quantum.Workspace/operations/storage.tsp index 9a50a91eeb06..172d97f43944 100644 --- a/specification/quantum/Quantum.Workspace/operations/storage.tsp +++ b/specification/quantum/Quantum.Workspace/operations/storage.tsp @@ -30,7 +30,7 @@ model SasUriResponse { alias BlobDetailsParam = { /** The details (name and container) of the blob. */ - @body + @bodyRoot blobDetails: BlobDetails; }; diff --git a/specification/riskiq/data-plane/Microsoft.Easm/preview/2023-03-01-preview/easm.json b/specification/riskiq/data-plane/Microsoft.Easm/preview/2023-03-01-preview/easm.json index be8dcb356cb7..80583013d4dc 100644 --- a/specification/riskiq/data-plane/Microsoft.Easm/preview/2023-03-01-preview/easm.json +++ b/specification/riskiq/data-plane/Microsoft.Easm/preview/2023-03-01-preview/easm.json @@ -5566,24 +5566,6 @@ } } }, - "Versions": { - "type": "string", - "description": "The EASM Defender service version.", - "enum": [ - "2023-03-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_03_01_preview", - "value": "2023-03-01-preview", - "description": "Version 2023-03-01-preview" - } - ] - } - }, "WebComponent": { "type": "object", "properties": { diff --git a/specification/schemaregistry/SchemaRegistry/main.tsp b/specification/schemaregistry/SchemaRegistry/main.tsp index 3245d3b89cc4..d2fded2ddae0 100644 --- a/specification/schemaregistry/SchemaRegistry/main.tsp +++ b/specification/schemaregistry/SchemaRegistry/main.tsp @@ -139,7 +139,7 @@ op getSchemaPropertiesByContent is resourceOperations.ResourceAction< ...SchemaContentType; ...SchemasContent; }, - SchemaProperties + Http.NoContentResponse & SchemaProperties >; // PUT https://{namespaceName}.servicebus.windows.net/$schemaGroups/{groupName}/schemas/{schemaName}?api-version={apiVersion} @@ -172,16 +172,21 @@ alias NoContentResponse = TypeSpec.Http.Response<204> & T; // TODO: Leaving as closed set of values for now, as we're blocked by https://github.com/microsoft/typespec/issues/2853. // Need to update once issue is fixed. +/** Describes closed list of schema content type values. */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "This union cannot be open" union SchemaContentTypeValues { + /** Avro encoding. */ avro: "application/json; serialization=Avro", + /** JSON encoding */ @added(ServiceVersion.V2022_10) json: "application/json; serialization=Json", + /** Plain text custom encoding. */ @added(ServiceVersion.V2022_10) custom: "text/plain; charset=utf-8", + /** Protobuf encoding. */ @added(ServiceVersion.V2023_07_01) protobuf: "text/vnd.ms.protobuf", } @@ -193,7 +198,7 @@ alias SchemaContentType = { }; alias SchemasContent = { - @body + @bodyRoot @doc("String representation (UTF-8) of the schema.") schemaContent: bytes; }; diff --git a/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2021-10/schemaregistry.json b/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2021-10/schemaregistry.json index b96bc85bc494..67fe4fb35cad 100644 --- a/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2021-10/schemaregistry.json +++ b/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2021-10/schemaregistry.json @@ -679,36 +679,6 @@ "required": [ "schemaName" ] - }, - "ServiceVersion": { - "type": "string", - "description": "Represents the Schema Registry API version to use for requests.", - "enum": [ - "2021-10", - "2022-10", - "2023-07-01" - ], - "x-ms-enum": { - "name": "ServiceVersion", - "modelAsString": true, - "values": [ - { - "name": "V2021_10", - "value": "2021-10", - "description": "Azure Schema Registry 2021-10 Version" - }, - { - "name": "V2022_10", - "value": "2022-10", - "description": "Azure Schema Registry 2022-10 Version" - }, - { - "name": "V2023_07_01", - "value": "2023-07-01", - "description": "Azure Schema Registry 2023-07-01 Version. This is the default version." - } - ] - } } }, "parameters": { diff --git a/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2022-10/schemaregistry.json b/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2022-10/schemaregistry.json index e680b06151a4..54130caa7a12 100644 --- a/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2022-10/schemaregistry.json +++ b/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2022-10/schemaregistry.json @@ -394,15 +394,18 @@ "values": [ { "name": "avro", - "value": "application/json; serialization=Avro" + "value": "application/json; serialization=Avro", + "description": "Avro encoding." }, { "name": "json", - "value": "application/json; serialization=Json" + "value": "application/json; serialization=Json", + "description": "JSON encoding" }, { "name": "custom", - "value": "text/plain; charset=utf-8" + "value": "text/plain; charset=utf-8", + "description": "Plain text custom encoding." } ] } @@ -498,15 +501,18 @@ "values": [ { "name": "avro", - "value": "application/json; serialization=Avro" + "value": "application/json; serialization=Avro", + "description": "Avro encoding." }, { "name": "json", - "value": "application/json; serialization=Json" + "value": "application/json; serialization=Json", + "description": "JSON encoding" }, { "name": "custom", - "value": "text/plain; charset=utf-8" + "value": "text/plain; charset=utf-8", + "description": "Plain text custom encoding." } ] } @@ -637,6 +643,7 @@ }, "SchemaContentTypeValues": { "type": "string", + "description": "Describes closed list of schema content type values.", "enum": [ "application/json; serialization=Avro", "application/json; serialization=Json", @@ -648,15 +655,18 @@ "values": [ { "name": "avro", - "value": "application/json; serialization=Avro" + "value": "application/json; serialization=Avro", + "description": "Avro encoding." }, { "name": "json", - "value": "application/json; serialization=Json" + "value": "application/json; serialization=Json", + "description": "JSON encoding" }, { "name": "custom", - "value": "text/plain; charset=utf-8" + "value": "text/plain; charset=utf-8", + "description": "Plain text custom encoding." } ] } @@ -735,36 +745,6 @@ "required": [ "schemaName" ] - }, - "ServiceVersion": { - "type": "string", - "description": "Represents the Schema Registry API version to use for requests.", - "enum": [ - "2021-10", - "2022-10", - "2023-07-01" - ], - "x-ms-enum": { - "name": "ServiceVersion", - "modelAsString": true, - "values": [ - { - "name": "V2021_10", - "value": "2021-10", - "description": "Azure Schema Registry 2021-10 Version" - }, - { - "name": "V2022_10", - "value": "2022-10", - "description": "Azure Schema Registry 2022-10 Version" - }, - { - "name": "V2023_07_01", - "value": "2023-07-01", - "description": "Azure Schema Registry 2023-07-01 Version. This is the default version." - } - ] - } } }, "parameters": { diff --git a/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2023-07-01/schemaregistry.json b/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2023-07-01/schemaregistry.json index 5e803b45de02..cbd2f391aac3 100644 --- a/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2023-07-01/schemaregistry.json +++ b/specification/schemaregistry/data-plane/Microsoft.SchemaRegistry/stable/2023-07-01/schemaregistry.json @@ -398,19 +398,23 @@ "values": [ { "name": "avro", - "value": "application/json; serialization=Avro" + "value": "application/json; serialization=Avro", + "description": "Avro encoding." }, { "name": "json", - "value": "application/json; serialization=Json" + "value": "application/json; serialization=Json", + "description": "JSON encoding" }, { "name": "custom", - "value": "text/plain; charset=utf-8" + "value": "text/plain; charset=utf-8", + "description": "Plain text custom encoding." }, { "name": "protobuf", - "value": "text/vnd.ms.protobuf" + "value": "text/vnd.ms.protobuf", + "description": "Protobuf encoding." } ] } @@ -508,19 +512,23 @@ "values": [ { "name": "avro", - "value": "application/json; serialization=Avro" + "value": "application/json; serialization=Avro", + "description": "Avro encoding." }, { "name": "json", - "value": "application/json; serialization=Json" + "value": "application/json; serialization=Json", + "description": "JSON encoding" }, { "name": "custom", - "value": "text/plain; charset=utf-8" + "value": "text/plain; charset=utf-8", + "description": "Plain text custom encoding." }, { "name": "protobuf", - "value": "text/vnd.ms.protobuf" + "value": "text/vnd.ms.protobuf", + "description": "Protobuf encoding." } ] } @@ -651,6 +659,7 @@ }, "SchemaContentTypeValues": { "type": "string", + "description": "Describes closed list of schema content type values.", "enum": [ "application/json; serialization=Avro", "application/json; serialization=Json", @@ -663,19 +672,23 @@ "values": [ { "name": "avro", - "value": "application/json; serialization=Avro" + "value": "application/json; serialization=Avro", + "description": "Avro encoding." }, { "name": "json", - "value": "application/json; serialization=Json" + "value": "application/json; serialization=Json", + "description": "JSON encoding" }, { "name": "custom", - "value": "text/plain; charset=utf-8" + "value": "text/plain; charset=utf-8", + "description": "Plain text custom encoding." }, { "name": "protobuf", - "value": "text/vnd.ms.protobuf" + "value": "text/vnd.ms.protobuf", + "description": "Protobuf encoding." } ] } @@ -754,36 +767,6 @@ "required": [ "schemaName" ] - }, - "ServiceVersion": { - "type": "string", - "description": "Represents the Schema Registry API version to use for requests.", - "enum": [ - "2021-10", - "2022-10", - "2023-07-01" - ], - "x-ms-enum": { - "name": "ServiceVersion", - "modelAsString": true, - "values": [ - { - "name": "V2021_10", - "value": "2021-10", - "description": "Azure Schema Registry 2021-10 Version" - }, - { - "name": "V2022_10", - "value": "2022-10", - "description": "Azure Schema Registry 2022-10 Version" - }, - { - "name": "V2023_07_01", - "value": "2023-07-01", - "description": "Azure Schema Registry 2023-07-01 Version. This is the default version." - } - ] - } } }, "parameters": { diff --git a/specification/sphere/Sphere.Management/catalog.tsp b/specification/sphere/Sphere.Management/catalog.tsp index 02c5c6a5a8f8..5433c0aaffc2 100644 --- a/specification/sphere/Sphere.Management/catalog.tsp +++ b/specification/sphere/Sphere.Management/catalog.tsp @@ -1,12 +1,5 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; @@ -74,7 +67,7 @@ interface Catalogs { void, ResourceListResult, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...CustomFilterQueryParameter; ...CustomTopQueryParameter; ...CustomSkipQueryParameter; @@ -90,7 +83,7 @@ interface Catalogs { ListDeviceGroupsRequest, ResourceListResult, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...CustomFilterQueryParameter; ...CustomTopQueryParameter; ...CustomSkipQueryParameter; @@ -106,7 +99,7 @@ interface Catalogs { void, PagedDeviceInsight, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...CustomFilterQueryParameter; ...CustomTopQueryParameter; ...CustomSkipQueryParameter; @@ -122,7 +115,7 @@ interface Catalogs { void, ResourceListResult, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...CustomFilterQueryParameter; ...CustomTopQueryParameter; ...CustomSkipQueryParameter; diff --git a/specification/sphere/Sphere.Management/certificate.tsp b/specification/sphere/Sphere.Management/certificate.tsp index b748f0318f92..57ddd5ed075a 100644 --- a/specification/sphere/Sphere.Management/certificate.tsp +++ b/specification/sphere/Sphere.Management/certificate.tsp @@ -1,13 +1,5 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "./catalog.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; @@ -41,7 +33,7 @@ interface Certificates { listByCatalog is ArmResourceListByParent< Certificate, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...CustomFilterQueryParameter; ...CustomTopQueryParameter; ...CustomSkipQueryParameter; diff --git a/specification/sphere/Sphere.Management/deployment.tsp b/specification/sphere/Sphere.Management/deployment.tsp index d07e0c465dd9..93528a9375cb 100644 --- a/specification/sphere/Sphere.Management/deployment.tsp +++ b/specification/sphere/Sphere.Management/deployment.tsp @@ -1,15 +1,6 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "./deviceGroup.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; -using TypeSpec.OpenAPI; namespace Microsoft.AzureSphere; /** @@ -53,7 +44,7 @@ interface Deployments { listByDeviceGroup is ArmResourceListByParent< Deployment, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...CustomFilterQueryParameter; ...CustomTopQueryParameter; ...CustomSkipQueryParameter; diff --git a/specification/sphere/Sphere.Management/device.tsp b/specification/sphere/Sphere.Management/device.tsp index 79497450b91d..aacac197e1eb 100644 --- a/specification/sphere/Sphere.Management/device.tsp +++ b/specification/sphere/Sphere.Management/device.tsp @@ -1,13 +1,5 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "./deviceGroup.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; diff --git a/specification/sphere/Sphere.Management/deviceGroup.tsp b/specification/sphere/Sphere.Management/deviceGroup.tsp index 9535e891f7ec..45278f314465 100644 --- a/specification/sphere/Sphere.Management/deviceGroup.tsp +++ b/specification/sphere/Sphere.Management/deviceGroup.tsp @@ -1,13 +1,5 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "./product.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; @@ -59,7 +51,7 @@ interface DeviceGroups { listByProduct is ArmResourceListByParent< DeviceGroup, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...CustomFilterQueryParameter; ...CustomTopQueryParameter; ...CustomSkipQueryParameter; diff --git a/specification/sphere/Sphere.Management/image.tsp b/specification/sphere/Sphere.Management/image.tsp index 12eddc9908b7..287eba68d7ba 100644 --- a/specification/sphere/Sphere.Management/image.tsp +++ b/specification/sphere/Sphere.Management/image.tsp @@ -1,13 +1,5 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "./catalog.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; @@ -53,7 +45,7 @@ interface Images { listByCatalog is ArmResourceListByParent< Image, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...CustomFilterQueryParameter; ...CustomTopQueryParameter; ...CustomSkipQueryParameter; diff --git a/specification/sphere/Sphere.Management/models.tsp b/specification/sphere/Sphere.Management/models.tsp index 750a50b85fb9..33f65e2ef22e 100644 --- a/specification/sphere/Sphere.Management/models.tsp +++ b/specification/sphere/Sphere.Management/models.tsp @@ -1,9 +1,3 @@ -import "@typespec/rest"; -import "@typespec/http"; -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; - -using TypeSpec.Rest; using TypeSpec.Http; using Azure.ResourceManager; using Azure.ResourceManager.Foundations; diff --git a/specification/sphere/Sphere.Management/product.tsp b/specification/sphere/Sphere.Management/product.tsp index 02c90bec6002..b470d59b440f 100644 --- a/specification/sphere/Sphere.Management/product.tsp +++ b/specification/sphere/Sphere.Management/product.tsp @@ -7,7 +7,6 @@ import "./catalog.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; diff --git a/specification/splitio/SplitIO.Experimentation.Management/main.tsp b/specification/splitio/SplitIO.Experimentation.Management/main.tsp index 185dcb2cd2d9..f3c23e1cd34d 100644 --- a/specification/splitio/SplitIO.Experimentation.Management/main.tsp +++ b/specification/splitio/SplitIO.Experimentation.Management/main.tsp @@ -10,166 +10,170 @@ using TypeSpec.Rest; using TypeSpec.Versioning; #suppress "@azure-tools/typespec-azure-core/casing-style" "SplitIO is a case-sensitive name" +namespace SplitIO { + +} + @armProviderNamespace @service({ title: "Split.IO Experimentation", }) @versioned(SplitIO.Experimentation.Versions) -namespace SplitIO.Experimentation; - -@doc("Supported API versions for the SplitIO.Experimentation resource provider.") -enum Versions { - @doc("Dependent on Azure.ResourceManager.Versions.v1_0_Preview_1") - @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) - @armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v5) - v1_preview: "2024-03-01-preview", -} - -interface Operations extends Azure.ResourceManager.Operations {} - -@doc("Properties of the experimentation workspace") -model ExperimentationWorkspaceProperties { - @doc("Provisioning state of the resource.") - @visibility("read") - provisioningState?: ExperimentationWorkspaceProvisioningState; - - @doc("Access policy for an experimentation workspace.") - accessPolicy: AccessPolicy; +namespace SplitIO.Experimentation { + @doc("Supported API versions for the SplitIO.Experimentation resource provider.") + enum Versions { + @doc("Dependent on Azure.ResourceManager.Versions.v1_0_Preview_1") + @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) + @armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v5) + v1_preview: "2024-03-01-preview", + } - @doc("Data source that telemetry data required for experimentation will be retrieved from.") - dataSource?: DataSource; -} + interface Operations extends Azure.ResourceManager.Operations {} -@doc("The experimentation workspace resource provisioning state") -union ExperimentationWorkspaceProvisioningState { - string, - ResourceProvisioningState, + @doc("Properties of the experimentation workspace") + model ExperimentationWorkspaceProperties { + @doc("Provisioning state of the resource.") + @visibility("read") + provisioningState?: ExperimentationWorkspaceProvisioningState; - @doc("Accepted provisioning state.") - Accepted: "Accepted", + @doc("Access policy for an experimentation workspace.") + accessPolicy: AccessPolicy; - @doc("Created provisioning state.") - Created: "Created", + @doc("Data source that telemetry data required for experimentation will be retrieved from.") + dataSource?: DataSource; + } - @doc("Deleting provisioning state.") - Deleting: "Deleting", -} + @doc("The experimentation workspace resource provisioning state") + union ExperimentationWorkspaceProvisioningState { + string, + ResourceProvisioningState, -@doc("Access policy for an experimentation workspace.") -model AccessPolicy { - @doc("Application id used for access to the experimentation workspace.") - applicationId: string; + @doc("Accepted provisioning state.") + Accepted: "Accepted", - @doc("Endpoint used for access to the experimentation workspace.") - @visibility("read") - dataPlaneEndpoint?: string; -} + @doc("Created provisioning state.") + Created: "Created", -@doc("Data source that telemetry data required for experimentation will be retrieved from.") -model DataSource { - @doc("Log Analytics data source.") - logAnalytics?: LogAnalytics; -} + @doc("Deleting provisioning state.") + Deleting: "Deleting", + } -scalar LogAnalyticsWorkspaceResourceId - extends Azure.Core.armResourceIdentifier<[ - { - type: "Microsoft.OperationalInsights/workspaces", - } - ]>; - -scalar StorageAccountResourceId - extends Azure.Core.armResourceIdentifier<[ - { - type: "Microsoft.Storage/storageAccounts", - } - ]>; - -@doc("The Log Analytics workspace which telemetry data required for experimentation will be retrieved from.") -model LogAnalytics { - @doc("Resource id of the Log Analytics workspace.") - resourceId: LogAnalyticsWorkspaceResourceId; - - @doc("Resource id of the storage account associated with the Log Analytics workspace.") - storageAccountResourceId: StorageAccountResourceId; - - @doc("Controls whether data flow from the configured Log Analytics workspace into the experimentation workspace is enabled.") - enabled: boolean; -} - -@doc("A ExperimentationWorkspace Resource by Split.IO") -model ExperimentationWorkspace - is TrackedResource { - @key("workspaceName") - @segment("experimentationWorkspaces") - @pattern("^[a-zA-Z0-9](?!.*--)[a-zA-Z0-9-]*[a-zA-Z0-9]$") - @minLength(5) - @maxLength(50) - @doc("The name of the ExperimentationWorkspace resource") - @path - name: string; - - ...ResourceSku; - ...ManagedServiceIdentity; -} - -@armResourceOperations -interface ExperimentationWorkspaces { - get is ArmResourceRead; - create is ArmResourceCreateOrUpdateAsync; - update is ArmResourcePatchAsync< - ExperimentationWorkspace, - ExperimentationWorkspaceProperties - >; - delete is ArmResourceDeleteWithoutOkAsync; - listByResourceGroup is ArmResourceListByParent; - listBySubscription is ArmListBySubscription; -} - -@doc("The exchange token parameters for exchanging Split.IO data plane authentication token.") -model ExchangeTokenParameters { - @doc("The bearer token that is used for exchanging Split.IO data plane authentication token.") - @secret - token: string; - - @doc("The resource of Split.IO data plane authentication token.") - resource: string; -} + @doc("Access policy for an experimentation workspace.") + model AccessPolicy { + @doc("Application id used for access to the experimentation workspace.") + applicationId: string; -@doc("The exchange token result that contains the bearer token which is used for Split.IO data plane authentication.") -model ExchangeTokenResult { - @doc("The bearer token that is used for Split.IO data plane authentication.") - @visibility("read") - @secret - token: string; -} + @doc("Endpoint used for access to the experimentation workspace.") + @visibility("read") + dataPlaneEndpoint?: string; + } -#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-interface-requires-decorator" "Need to remove autoroute" -@route("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/SplitIO.Experimentation/experimentationWorkspaces/{workspaceName}/dataPlaneApplications/{applicationId}") -interface DataPlaneApplications { - #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" "Need to remove autoroute" - @doc("The action to exchange Split.IO data plane authentication token.") - @route("exchangeToken") - @post - @action - exchangeToken( - ...ApiVersionParameter, - ...SubscriptionIdParameter, - ...ResourceGroupParameter, - - @doc("The name of the ExperimentationWorkspace resource.") - @path + @doc("Data source that telemetry data required for experimentation will be retrieved from.") + model DataSource { + @doc("Log Analytics data source.") + logAnalytics?: LogAnalytics; + } + + scalar LogAnalyticsWorkspaceResourceId + extends Azure.Core.armResourceIdentifier<[ + { + type: "Microsoft.OperationalInsights/workspaces", + } + ]>; + + scalar StorageAccountResourceId + extends Azure.Core.armResourceIdentifier<[ + { + type: "Microsoft.Storage/storageAccounts", + } + ]>; + + @doc("The Log Analytics workspace which telemetry data required for experimentation will be retrieved from.") + model LogAnalytics { + @doc("Resource id of the Log Analytics workspace.") + resourceId: LogAnalyticsWorkspaceResourceId; + + @doc("Resource id of the storage account associated with the Log Analytics workspace.") + storageAccountResourceId: StorageAccountResourceId; + + @doc("Controls whether data flow from the configured Log Analytics workspace into the experimentation workspace is enabled.") + enabled: boolean; + } + + @doc("A ExperimentationWorkspace Resource by Split.IO") + model ExperimentationWorkspace + is TrackedResource { + @key("workspaceName") + @segment("experimentationWorkspaces") @pattern("^[a-zA-Z0-9](?!.*--)[a-zA-Z0-9-]*[a-zA-Z0-9]$") @minLength(5) @maxLength(50) - workspaceName: string, - - @doc("The id of the Split.IO data plane authentication application.") + @doc("The name of the ExperimentationWorkspace resource") @path - applicationId: string, - - @doc("The parameter of exchange token action.") - @body - exchangeTokenParameters: ExchangeTokenParameters, - ): ExchangeTokenResult | ErrorResponse; + name: string; + + ...ResourceSkuProperty; + ...ManagedServiceIdentityProperty; + } + + @armResourceOperations + interface ExperimentationWorkspaces { + get is ArmResourceRead; + create is ArmResourceCreateOrUpdateAsync; + update is ArmResourcePatchAsync< + ExperimentationWorkspace, + ExperimentationWorkspaceProperties + >; + delete is ArmResourceDeleteWithoutOkAsync; + listByResourceGroup is ArmResourceListByParent; + listBySubscription is ArmListBySubscription; + } + + @doc("The exchange token parameters for exchanging Split.IO data plane authentication token.") + model ExchangeTokenParameters { + @doc("The bearer token that is used for exchanging Split.IO data plane authentication token.") + @secret + token: string; + + @doc("The resource of Split.IO data plane authentication token.") + resource: string; + } + + @doc("The exchange token result that contains the bearer token which is used for Split.IO data plane authentication.") + model ExchangeTokenResult { + @doc("The bearer token that is used for Split.IO data plane authentication.") + @visibility("read") + @secret + token: string; + } + + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-interface-requires-decorator" "Need to remove autoroute" + @route("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/SplitIO.Experimentation/experimentationWorkspaces/{workspaceName}/dataPlaneApplications/{applicationId}") + interface DataPlaneApplications { + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" "Need to remove autoroute" + @doc("The action to exchange Split.IO data plane authentication token.") + @route("exchangeToken") + @post + @action + exchangeToken( + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...ResourceGroupParameter, + + @doc("The name of the ExperimentationWorkspace resource.") + @path + @pattern("^[a-zA-Z0-9](?!.*--)[a-zA-Z0-9-]*[a-zA-Z0-9]$") + @minLength(5) + @maxLength(50) + workspaceName: string, + + @doc("The id of the Split.IO data plane authentication application.") + @path + applicationId: string, + + @doc("The parameter of exchange token action.") + @body + exchangeTokenParameters: ExchangeTokenParameters, + ): ExchangeTokenResult | ErrorResponse; + } } diff --git a/specification/splitio/resource-manager/SplitIO.Experimentation/preview/2024-03-01-preview/splitio.json b/specification/splitio/resource-manager/SplitIO.Experimentation/preview/2024-03-01-preview/splitio.json index a95fba3bf317..bda2742acea8 100644 --- a/specification/splitio/resource-manager/SplitIO.Experimentation/preview/2024-03-01-preview/splitio.json +++ b/specification/splitio/resource-manager/SplitIO.Experimentation/preview/2024-03-01-preview/splitio.json @@ -791,24 +791,6 @@ } ] } - }, - "Versions": { - "type": "string", - "description": "Supported API versions for the SplitIO.Experimentation resource provider.", - "enum": [ - "2024-03-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v1_preview", - "value": "2024-03-01-preview", - "description": "Dependent on Azure.ResourceManager.Versions.v1_0_Preview_1" - } - ] - } } }, "parameters": {} diff --git a/specification/translation/Azure.AI.DocumentTranslation/models.tsp b/specification/translation/Azure.AI.DocumentTranslation/models.tsp index 131898ed72de..0b1c6116e494 100644 --- a/specification/translation/Azure.AI.DocumentTranslation/models.tsp +++ b/specification/translation/Azure.AI.DocumentTranslation/models.tsp @@ -84,8 +84,12 @@ union StorageSource { @doc("List of possible additional output formats") union AdditionalOutputFileFormat { + /** No additional format */ None: "None", + + /** OpenXmlWord format */ OpenXmlWord: "OpenXmlWord", + string, } diff --git a/specification/translation/Azure.AI.TextTranslation/main.tsp b/specification/translation/Azure.AI.TextTranslation/main.tsp index 90b0afb2736c..5fe00b53c8b5 100644 --- a/specification/translation/Azure.AI.TextTranslation/main.tsp +++ b/specification/translation/Azure.AI.TextTranslation/main.tsp @@ -44,7 +44,6 @@ Dictionary example Returns grammatical structure and context examples for the so @versioned(APIVersion) namespace TextTranslation; -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" @doc("Text Translation supported versions") enum APIVersion { v3_0: "3.0", diff --git a/specification/translation/Azure.AI.TextTranslation/models-breaksentence.tsp b/specification/translation/Azure.AI.TextTranslation/models-breaksentence.tsp index 5f610cce63b6..06798cb40010 100644 --- a/specification/translation/Azure.AI.TextTranslation/models-breaksentence.tsp +++ b/specification/translation/Azure.AI.TextTranslation/models-breaksentence.tsp @@ -32,7 +32,7 @@ model BreakSentenceParameters { model BreakSentenceResult { ...CommonResultHeaders; - @body + @bodyRoot @doc("Array of the break sentence elements.") result: BreakSentenceItem[]; } diff --git a/specification/translation/Azure.AI.TextTranslation/models-dictionary.tsp b/specification/translation/Azure.AI.TextTranslation/models-dictionary.tsp index b3af9ed3b942..bedee8f9752c 100644 --- a/specification/translation/Azure.AI.TextTranslation/models-dictionary.tsp +++ b/specification/translation/Azure.AI.TextTranslation/models-dictionary.tsp @@ -40,7 +40,7 @@ model DictionaryExamplesParameters { model DictionaryLookupResult { ...CommonResultHeaders; - @body + @bodyRoot @doc("Array of the dictionary lookup elements.") result: DictionaryLookupItem[]; } @@ -49,7 +49,7 @@ model DictionaryLookupResult { model DictionaryExamplesResult { ...CommonResultHeaders; - @body + @bodyRoot @doc("Array of the dictionary examples elements.") result: DictionaryExampleItem[]; } diff --git a/specification/translation/Azure.AI.TextTranslation/models-translate.tsp b/specification/translation/Azure.AI.TextTranslation/models-translate.tsp index adc9768e0fd3..4326aa373a20 100644 --- a/specification/translation/Azure.AI.TextTranslation/models-translate.tsp +++ b/specification/translation/Azure.AI.TextTranslation/models-translate.tsp @@ -117,7 +117,7 @@ model TranslateParameters { model TranslationResult { ...CommonResultHeaders; - @body + @bodyRoot @doc("Array of the translated text elements.") result: TranslatedTextItem[]; @@ -143,22 +143,36 @@ model TranslationResult { @doc("Translation text type") union TextType { string, + + /** Plain text. */ Plain: "Plain", + + /** HTML-encoded text. */ Html: "Html", } @doc("Translator profanity actions") union ProfanityAction { string, + + /** Take no action. */ NoAction: "NoAction", + + /** Replace the profanity with a specific marker. */ Marked: "Marked", + + /** Delete the profanity. */ Deleted: "Deleted", } @doc("Translator profanity markers") union ProfanityMarker { string, + + /** Replace the profanity with asterisks. */ Asterisk: "Asterisk", + + /** Replace the profanity with a specific tag. */ Tag: "Tag", } diff --git a/specification/translation/Azure.AI.TextTranslation/models-transliterate.tsp b/specification/translation/Azure.AI.TextTranslation/models-transliterate.tsp index 9b83982e17fb..a54e676a23a7 100644 --- a/specification/translation/Azure.AI.TextTranslation/models-transliterate.tsp +++ b/specification/translation/Azure.AI.TextTranslation/models-transliterate.tsp @@ -39,7 +39,7 @@ model TransliterateParameters { model TransliterateResult { ...CommonResultHeaders; - @body + @bodyRoot @doc("Array of transliterated texts") result: TransliteratedText[]; } diff --git a/specification/translation/Azure.AI.TextTranslation/routes.tsp b/specification/translation/Azure.AI.TextTranslation/routes.tsp index 850261f2d4a7..122b9102327b 100644 --- a/specification/translation/Azure.AI.TextTranslation/routes.tsp +++ b/specification/translation/Azure.AI.TextTranslation/routes.tsp @@ -24,7 +24,7 @@ op CustomOperation< #suppress "@azure-tools/typespec-azure-core/request-body-problem" "Existing spec" @doc("Defines the content of the request") - @body + @bodyRoot requestBody: TBody, @doc("Mandatory API version parameter") diff --git a/specification/translation/data-plane/Azure.AI.DocumentTranslation/stable/2024-05-01/openapi.json b/specification/translation/data-plane/Azure.AI.DocumentTranslation/stable/2024-05-01/openapi.json index 9143558c8ac2..999176fb42ad 100644 --- a/specification/translation/data-plane/Azure.AI.DocumentTranslation/stable/2024-05-01/openapi.json +++ b/specification/translation/data-plane/Azure.AI.DocumentTranslation/stable/2024-05-01/openapi.json @@ -647,11 +647,13 @@ "values": [ { "name": "None", - "value": "None" + "value": "None", + "description": "No additional format" }, { "name": "OpenXmlWord", - "value": "OpenXmlWord" + "value": "OpenXmlWord", + "description": "OpenXmlWord format" } ] } @@ -1387,23 +1389,6 @@ "required": [ "value" ] - }, - "Versions": { - "type": "string", - "description": "Document Translation supported versions", - "enum": [ - "2024-05-01" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2024_05_01", - "value": "2024-05-01" - } - ] - } } }, "parameters": { diff --git a/specification/translation/data-plane/Azure.AI.TextTranslation/stable/v3.0/openapi.json b/specification/translation/data-plane/Azure.AI.TextTranslation/stable/v3.0/openapi.json index f47a1175784d..96e4864a81c8 100644 --- a/specification/translation/data-plane/Azure.AI.TextTranslation/stable/v3.0/openapi.json +++ b/specification/translation/data-plane/Azure.AI.TextTranslation/stable/v3.0/openapi.json @@ -578,23 +578,6 @@ } }, "definitions": { - "APIVersion": { - "type": "string", - "description": "Text Translation supported versions", - "enum": [ - "3.0" - ], - "x-ms-enum": { - "name": "APIVersion", - "modelAsString": true, - "values": [ - { - "name": "v3_0", - "value": "3.0" - } - ] - } - }, "BackTranslation": { "type": "object", "description": "Back Translation", @@ -1019,15 +1002,18 @@ "values": [ { "name": "NoAction", - "value": "NoAction" + "value": "NoAction", + "description": "Take no action." }, { "name": "Marked", - "value": "Marked" + "value": "Marked", + "description": "Replace the profanity with a specific marker." }, { "name": "Deleted", - "value": "Deleted" + "value": "Deleted", + "description": "Delete the profanity." } ] } @@ -1045,11 +1031,13 @@ "values": [ { "name": "Asterisk", - "value": "Asterisk" + "value": "Asterisk", + "description": "Replace the profanity with asterisks." }, { "name": "Tag", - "value": "Tag" + "value": "Tag", + "description": "Replace the profanity with a specific tag." } ] } @@ -1166,11 +1154,13 @@ "values": [ { "name": "Plain", - "value": "Plain" + "value": "Plain", + "description": "Plain text." }, { "name": "Html", - "value": "Html" + "value": "Html", + "description": "HTML-encoded text." } ] } @@ -1482,15 +1472,18 @@ "values": [ { "name": "NoAction", - "value": "NoAction" + "value": "NoAction", + "description": "Take no action." }, { "name": "Marked", - "value": "Marked" + "value": "Marked", + "description": "Replace the profanity with a specific marker." }, { "name": "Deleted", - "value": "Deleted" + "value": "Deleted", + "description": "Delete the profanity." } ] }, @@ -1513,11 +1506,13 @@ "values": [ { "name": "Asterisk", - "value": "Asterisk" + "value": "Asterisk", + "description": "Replace the profanity with asterisks." }, { "name": "Tag", - "value": "Tag" + "value": "Tag", + "description": "Replace the profanity with a specific tag." } ] }, @@ -1548,11 +1543,13 @@ "values": [ { "name": "Plain", - "value": "Plain" + "value": "Plain", + "description": "Plain text." }, { "name": "Html", - "value": "Html" + "value": "Html", + "description": "HTML-encoded text." } ] }, diff --git a/specification/vmware/Microsoft.AVS/models.tsp b/specification/vmware/Microsoft.AVS/models.tsp index 811414bcd17c..48f2c432c69b 100644 --- a/specification/vmware/Microsoft.AVS/models.tsp +++ b/specification/vmware/Microsoft.AVS/models.tsp @@ -5,7 +5,6 @@ import "@azure-tools/typespec-azure-core"; using TypeSpec.Rest; using TypeSpec.Http; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.OpenAPI; namespace Microsoft.AVS; @@ -624,7 +623,7 @@ model LocationProperties { @doc("A private cloud resource") model PrivateCloud is TrackedResource { ...ResourceSkuRequired; - ...ManagedSystemAssignedIdentity; + ...ManagedSystemAssignedIdentityProperty; @doc("Name of the private cloud") @pattern("^[-\\w\\._]+$") @@ -644,9 +643,9 @@ model PrivateCloudNameParameter { @doc("An update to a private cloud resource") model PrivateCloudUpdate { - ...ArmTagsProperty; - ...ResourceSku; - ...ManagedSystemAssignedIdentity; + ...Foundations.ArmTagsProperty; + ...ResourceSkuProperty; + ...ManagedSystemAssignedIdentityProperty; @doc("The updatable properties of a private cloud resource") @extension("x-ms-client-flatten", true) @@ -966,7 +965,7 @@ model ClusterProperties { @doc("An update of a cluster resource") model ClusterUpdate { - ...ResourceSku; + ...ResourceSkuProperty; @doc("The properties of a cluster resource that may be updated") @extension("x-ms-client-flatten", true) @@ -2223,5 +2222,5 @@ union IscsiPathProvisioningState { @doc("The SKU (Stock Keeping Unit) assigned to this resource.") model ResourceSkuRequired { @doc("The SKU (Stock Keeping Unit) assigned to this resource.") - sku: ResourceSkuType; + sku: Foundations.Sku; } diff --git a/specification/vmware/Microsoft.AVS/routes.tsp b/specification/vmware/Microsoft.AVS/routes.tsp index 242f047f1ab8..8a490e1c769f 100644 --- a/specification/vmware/Microsoft.AVS/routes.tsp +++ b/specification/vmware/Microsoft.AVS/routes.tsp @@ -22,8 +22,8 @@ interface Locations { ...ResourceInstanceParameters, @doc("Optionally, check for a specific SKU") - @body - sku?: ResourceSkuType, + @bodyRoot + sku?: Sku, ): ArmResponse | ErrorResponse; @doc("Return quota for subscription by region") @@ -61,7 +61,7 @@ interface PrivateClouds { update( ...ResourceInstanceParameters, - @body + @bodyRoot @doc("The private cloud properties to be updated.") privateCloudUpdate: PrivateCloudUpdate, ): ArmResponse | { @@ -71,7 +71,7 @@ interface PrivateClouds { ...Azure.Core.Foundations.RetryAfterHeader; ...LocationHeader; - @body + @bodyRoot @doc("The updated private cloud.") placementPolicy: PrivateCloud; } | ErrorResponse; @@ -130,7 +130,7 @@ interface Clusters { update( ...ResourceInstanceParameters, - @body + @bodyRoot @doc("The cluster properties to be updated.") clusterUpdate: ClusterUpdate, ): ArmResponse | { @@ -140,7 +140,7 @@ interface Clusters { ...Azure.Core.Foundations.RetryAfterHeader; ...LocationHeader; - @body + @bodyRoot @doc("The updated cluster.") cluster: Cluster; } | ErrorResponse; @@ -844,7 +844,7 @@ interface VirtualMachines { restrictMovement( ...ResourceInstanceParameters, - @body + @bodyRoot @doc("The body type of the operation request.") restrictMovement: VirtualMachineRestrictMovement, ): ArmAcceptedLroResponse | ErrorResponse; @@ -876,7 +876,7 @@ interface PlacementPolicies { update( ...ResourceInstanceParameters, - @body + @bodyRoot @doc("The placement policy properties to be updated.") placementPolicyUpdate: PlacementPolicyUpdate, ): ArmResponse | { @@ -884,7 +884,7 @@ interface PlacementPolicies { ...Azure.Core.Foundations.RetryAfterHeader; ...LocationHeader; - @body + @bodyRoot @doc("The updatd placement policy.") placementPolicy: PlacementPolicy; } | ErrorResponse; @@ -946,7 +946,7 @@ interface ScriptExecutions { ...ResourceInstanceParameters, #suppress "@azure-tools/typespec-azure-core/request-body-problem" - @body + @bodyRoot @doc("Name of the desired output stream to return. If not provided, will return all. An empty array will return nothing.") scriptOutputStreamType?: ScriptOutputStreamType[], ): ArmResponse | ErrorResponse; @@ -984,17 +984,17 @@ interface IscsiPaths { delete is ArmResourceDeleteAsync; } -// use { @body _: void } with the next version of typespec-azure +// use { @bodyRoot _: void } with the next version of typespec-azure // https://github.com/Azure/typespec-azure/issues/3759 // Just like ArmResourceActionSync, but with no request body. #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" -#suppress "@azure-tools/typespec-azure-core/documentation-required" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "MUST fix in next update" @autoRoute @armResourceAction(TResource) @post op ArmResourceActionSyncNoRequestBody< - TResource extends ArmResource, + TResource extends Azure.ResourceManager.Foundations.Resource, TResponse extends TypeSpec.Reflection.Model, TBaseParameters = BaseParameters >( @@ -1003,9 +1003,9 @@ op ArmResourceActionSyncNoRequestBody< // Just like ArmResourceActionAsync, but with no request body. #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" -#suppress "@azure-tools/typespec-azure-core/documentation-required" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "MUST fix in next update" op ArmResourceActionNoContentAsyncNoRequestBody< - TResource extends ArmResource, + TResource extends Azure.ResourceManager.Foundations.Resource, TBaseParameters extends TypeSpec.Reflection.Model = BaseParameters > is ArmResourceActionAsyncBaseNoRequestBody< TResource, @@ -1015,7 +1015,7 @@ op ArmResourceActionNoContentAsyncNoRequestBody< // Just like ArmResourceActionAsyncBase, but with no request body. #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" -#suppress "@azure-tools/typespec-azure-core/documentation-required" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "MUST fix in next update" @autoRoute @extension("x-ms-long-running-operation", true) @extension( @@ -1027,7 +1027,7 @@ op ArmResourceActionNoContentAsyncNoRequestBody< @armResourceAction(TResource) @post op ArmResourceActionAsyncBaseNoRequestBody< - TResource extends ArmResource, + TResource extends Azure.ResourceManager.Foundations.Resource, TResponse, TBaseParameters extends TypeSpec.Reflection.Model >( diff --git a/specification/vmware/resource-manager/Microsoft.AVS/stable/2023-09-01/vmware.json b/specification/vmware/resource-manager/Microsoft.AVS/stable/2023-09-01/vmware.json index cb53b60546ea..7df2413fac30 100644 --- a/specification/vmware/resource-manager/Microsoft.AVS/stable/2023-09-01/vmware.json +++ b/specification/vmware/resource-manager/Microsoft.AVS/stable/2023-09-01/vmware.json @@ -8539,7 +8539,8 @@ "description": "is updating" } ] - } + }, + "readOnly": true }, "PlacementPolicyState": { "type": "string", @@ -10248,7 +10249,8 @@ "description": "is updating" } ] - } + }, + "readOnly": true }, "WorkloadNetworkDhcpRelay": { "type": "object", @@ -10476,7 +10478,8 @@ "description": "is updating" } ] - } + }, + "readOnly": true }, "WorkloadNetworkDnsServiceUpdate": { "type": "object", @@ -10619,7 +10622,8 @@ "description": "is updating" } ] - } + }, + "readOnly": true }, "WorkloadNetworkDnsZoneUpdate": { "type": "object", @@ -10838,7 +10842,8 @@ "description": "is updating" } ] - } + }, + "readOnly": true }, "WorkloadNetworkPortMirroringUpdate": { "type": "object", @@ -11023,7 +11028,8 @@ "description": "is updating" } ] - } + }, + "readOnly": true }, "WorkloadNetworkSegment": { "type": "object", @@ -11164,7 +11170,8 @@ "description": "is updating" } ] - } + }, + "readOnly": true }, "WorkloadNetworkSegmentSubnet": { "type": "object", @@ -11313,7 +11320,8 @@ "description": "is updating" } ] - } + }, + "readOnly": true }, "WorkloadNetworkVMGroupUpdate": { "type": "object", diff --git a/specification/voiceservices/VoiceServices.Provisioning/main.tsp b/specification/voiceservices/VoiceServices.Provisioning/main.tsp index f58724fc89dc..caf465c869bc 100644 --- a/specification/voiceservices/VoiceServices.Provisioning/main.tsp +++ b/specification/voiceservices/VoiceServices.Provisioning/main.tsp @@ -853,7 +853,7 @@ interface Accounts { deleteNumbers is Operations.ResourceAction< AccountResource, BatchNumbersDelete, - {} + NoContentResponse >; @tag("Number") @@ -951,7 +951,7 @@ op listNumbers is RpcOperation< { @statusCode statusCode: 200; @header contentType: "application/json"; - @body success: PagedNumberList; + @bodyRoot success: PagedNumberList; ...CountOfRecordsHeader; } >; diff --git a/specification/voiceservices/data-plane/Microsoft.VoiceServices/preview/2024-02-29-preview/swagger.json b/specification/voiceservices/data-plane/Microsoft.VoiceServices/preview/2024-02-29-preview/swagger.json index 0f7acfd94203..87695257d9f6 100644 --- a/specification/voiceservices/data-plane/Microsoft.VoiceServices/preview/2024-02-29-preview/swagger.json +++ b/specification/voiceservices/data-plane/Microsoft.VoiceServices/preview/2024-02-29-preview/swagger.json @@ -3516,24 +3516,6 @@ ] } }, - "Versions": { - "type": "string", - "description": "The Microsoft.VoiceServices service versions.", - "enum": [ - "2024-02-29-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2024_02_29_preview", - "value": "2024-02-29-preview", - "description": "2024-02-29-preview" - } - ] - } - }, "ZoomPhoneCloudPeeringAccountDetails": { "type": "object", "description": "Account details specific to Zoom Phone Cloud Peering.", diff --git a/specification/workloads/Workloads.Operations.Management/main.tsp b/specification/workloads/Workloads.Operations.Management/main.tsp index bac4c309b92b..65861de28054 100644 --- a/specification/workloads/Workloads.Operations.Management/main.tsp +++ b/specification/workloads/Workloads.Operations.Management/main.tsp @@ -4,12 +4,9 @@ import "@azure-tools/typespec-azure-core"; import "@azure-tools/typespec-azure-resource-manager"; import "./models.tsp"; -using TypeSpec.Rest; -using TypeSpec.Http; -using Azure.ResourceManager.Foundations; -using Azure.Core; using Azure.ResourceManager; using TypeSpec.Versioning; + /** * Workloads client provides access to various workload operations. */ diff --git a/specification/workloads/Workloads.Operations.Management/models.tsp b/specification/workloads/Workloads.Operations.Management/models.tsp index 74c075ebb81b..2a904f4ba3ac 100644 --- a/specification/workloads/Workloads.Operations.Management/models.tsp +++ b/specification/workloads/Workloads.Operations.Management/models.tsp @@ -1,14 +1,3 @@ -import "@typespec/rest"; -import "@typespec/http"; -import "@typespec/openapi"; -import "@azure-tools/typespec-azure-resource-manager"; - -using TypeSpec.Rest; -using TypeSpec.Http; -using TypeSpec.OpenAPI; -using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; - namespace Microsoft.Workloads; interface Operations extends Azure.ResourceManager.Operations {} diff --git a/specification/workloads/Workloads.SAPDiscoverySite.Management/SAPDiscoverySite.tsp b/specification/workloads/Workloads.SAPDiscoverySite.Management/SAPDiscoverySite.tsp index 7a21456d3b75..cf1c04eb5504 100644 --- a/specification/workloads/Workloads.SAPDiscoverySite.Management/SAPDiscoverySite.tsp +++ b/specification/workloads/Workloads.SAPDiscoverySite.Management/SAPDiscoverySite.tsp @@ -1,14 +1,6 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; -using TypeSpec.OpenAPI; namespace Microsoft.Workloads; /** @@ -75,6 +67,6 @@ interface SAPDiscoverySites { importEntities is ArmResourceActionAsync< SAPDiscoverySite, void, - OperationStatusResult + Foundations.OperationStatusResult >; } diff --git a/specification/workloads/Workloads.SAPDiscoverySite.Management/SAPInstance.tsp b/specification/workloads/Workloads.SAPDiscoverySite.Management/SAPInstance.tsp index 70c260d576f1..f70c9a2bce2e 100644 --- a/specification/workloads/Workloads.SAPDiscoverySite.Management/SAPInstance.tsp +++ b/specification/workloads/Workloads.SAPDiscoverySite.Management/SAPInstance.tsp @@ -1,13 +1,5 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "./SAPDiscoverySite.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; diff --git a/specification/workloads/Workloads.SAPDiscoverySite.Management/ServerInstance.tsp b/specification/workloads/Workloads.SAPDiscoverySite.Management/ServerInstance.tsp index f7e2e019a065..053290d8b0bf 100644 --- a/specification/workloads/Workloads.SAPDiscoverySite.Management/ServerInstance.tsp +++ b/specification/workloads/Workloads.SAPDiscoverySite.Management/ServerInstance.tsp @@ -1,15 +1,6 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "./SAPInstance.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; -using TypeSpec.OpenAPI; namespace Microsoft.Workloads; /** diff --git a/specification/workloads/Workloads.SAPDiscoverySite.Management/models.tsp b/specification/workloads/Workloads.SAPDiscoverySite.Management/models.tsp index e827f8160668..9d7b42337247 100644 --- a/specification/workloads/Workloads.SAPDiscoverySite.Management/models.tsp +++ b/specification/workloads/Workloads.SAPDiscoverySite.Management/models.tsp @@ -1,8 +1,3 @@ -import "@typespec/rest"; -import "@typespec/http"; -import "@typespec/openapi"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Rest; using TypeSpec.Http; using TypeSpec.OpenAPI; diff --git a/specification/workloads/Workloads.SAPMonitor.Management/Monitor.tsp b/specification/workloads/Workloads.SAPMonitor.Management/Monitor.tsp index f6d507a6791b..52a5d27b84c8 100644 --- a/specification/workloads/Workloads.SAPMonitor.Management/Monitor.tsp +++ b/specification/workloads/Workloads.SAPMonitor.Management/Monitor.tsp @@ -1,9 +1,3 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; using TypeSpec.Http; @@ -24,11 +18,7 @@ model Monitor is TrackedResource { @visibility("read") name: string; - /** - * The managed service identities assigned to this resource. - */ - #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "'identity' is a valid property for a tracked resource." - identity?: ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } @armResourceOperations @@ -46,7 +36,7 @@ interface Monitors { /** * Patches the Tags field of a SAP monitor for the specified subscription, resource group, and SAP monitor name. */ - @parameterVisibility("read") + @parameterVisibility update is ArmCustomPatchAsync; /** diff --git a/specification/workloads/Workloads.SAPMonitor.Management/ProviderInstance.tsp b/specification/workloads/Workloads.SAPMonitor.Management/ProviderInstance.tsp index d444d6d1b543..2e43d502005a 100644 --- a/specification/workloads/Workloads.SAPMonitor.Management/ProviderInstance.tsp +++ b/specification/workloads/Workloads.SAPMonitor.Management/ProviderInstance.tsp @@ -1,15 +1,6 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; -import "./models.tsp"; -import "./Monitor.tsp"; - using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; -using TypeSpec.OpenAPI; namespace Microsoft.Workloads; /** diff --git a/specification/workloads/Workloads.SAPMonitor.Management/SapLandscapeMonitor.tsp b/specification/workloads/Workloads.SAPMonitor.Management/SapLandscapeMonitor.tsp index 46d6f6550f23..77b5ed33066c 100644 --- a/specification/workloads/Workloads.SAPMonitor.Management/SapLandscapeMonitor.tsp +++ b/specification/workloads/Workloads.SAPMonitor.Management/SapLandscapeMonitor.tsp @@ -7,7 +7,6 @@ import "./Monitor.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using TypeSpec.OpenAPI; @@ -45,7 +44,7 @@ interface SapLandscapeMonitor { /** * Patches the SAP Landscape Monitor Dashboard for the specified subscription, resource group, and SAP monitor name. */ - @parameterVisibility("read") + @parameterVisibility update is ArmCustomPatchSync< SapLandscapeMonitorResource, SapLandscapeMonitorResource diff --git a/specification/workloads/Workloads.SAPMonitor.Management/main.tsp b/specification/workloads/Workloads.SAPMonitor.Management/main.tsp index ecf29a360b94..90a06e505cc2 100644 --- a/specification/workloads/Workloads.SAPMonitor.Management/main.tsp +++ b/specification/workloads/Workloads.SAPMonitor.Management/main.tsp @@ -7,9 +7,6 @@ import "./Monitor.tsp"; import "./ProviderInstance.tsp"; import "./SapLandscapeMonitor.tsp"; -using TypeSpec.Rest; -using TypeSpec.Http; -using Azure.Core; using Azure.ResourceManager; using TypeSpec.Versioning; diff --git a/specification/workloads/Workloads.SAPMonitor.Management/models.tsp b/specification/workloads/Workloads.SAPMonitor.Management/models.tsp index e80d97be7a22..1821020722b0 100644 --- a/specification/workloads/Workloads.SAPMonitor.Management/models.tsp +++ b/specification/workloads/Workloads.SAPMonitor.Management/models.tsp @@ -1,7 +1,3 @@ -import "@typespec/rest"; -import "@typespec/http"; -import "@azure-tools/typespec-azure-resource-manager"; - using TypeSpec.Rest; using TypeSpec.Http; using TypeSpec.OpenAPI; @@ -11,22 +7,6 @@ using Azure.ResourceManager.Private; namespace Microsoft.Workloads; -/** - * The managed service identity for all identities. - */ -union ManagedServiceIdentityType { - string, - - /** No managed identity. */ - None: "None", - - /** The user assigned managed identity. */ - UserAssigned: "UserAssigned", - - /** The system assigned managed identity. */ - SystemAssigned: "SystemAssigned", -} - /** * State of provisioning of the SAP monitor. */ @@ -141,47 +121,6 @@ union SslPreference { ServerCertificate: "ServerCertificate", } -/** - * Describes the user assigned identity records. - */ -@armCommonDefinition( - "UserAssignedIdentities", - Azure.ResourceManager.CommonTypes.Versions.v5, - "managedidentity.json" -) -model UserAssignedIdentities {} - -/** - * Describes the identity property of monitor resources. - */ -#suppress "@azure-tools/typespec-azure-core/no-format" "uuid format is being refered in the common types" -@doc("The Managed service identity.") -model ManagedServiceIdentity { - /** - * The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity. - */ - @visibility("read") - @format("uuid") - principalId?: string; - - /** - * The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity. - */ - @visibility("read") - @format("uuid") - tenantId?: string; - - /** - * The type of managed service identity. - */ - type: ManagedServiceIdentityType; - - /** - * The user assigned identities. - */ - userAssignedIdentities?: UserAssignedIdentities; -} - /** * Describes the properties of a SAP monitor. */ @@ -277,11 +216,7 @@ model AppServicePlanConfiguration { */ model UpdateMonitorRequest { ...ArmTagsProperty; - - /** - * The Managed service identity. - */ - identity?: ManagedServiceIdentity; + ...ManagedServiceIdentityProperty; } /** diff --git a/specification/workloads/resource-manager/Microsoft.Workloads/SAPDiscoverySites/preview/2023-10-01-preview/SAPDiscoverySites.json b/specification/workloads/resource-manager/Microsoft.Workloads/SAPDiscoverySites/preview/2023-10-01-preview/SAPDiscoverySites.json index 9e9626adcb96..72f5ae3e013c 100644 --- a/specification/workloads/resource-manager/Microsoft.Workloads/SAPDiscoverySites/preview/2023-10-01-preview/SAPDiscoverySites.json +++ b/specification/workloads/resource-manager/Microsoft.Workloads/SAPDiscoverySites/preview/2023-10-01-preview/SAPDiscoverySites.json @@ -1861,24 +1861,6 @@ "description": "Server instances properties." } } - }, - "Versions": { - "type": "string", - "description": "The available API versions.", - "enum": [ - "2023-10-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_10_01_preview", - "value": "2023-10-01-preview", - "description": "The 2023-10-01-preview API version." - } - ] - } } }, "parameters": {} diff --git a/specification/workloads/resource-manager/Microsoft.Workloads/monitors/preview/2023-12-01-preview/monitors.json b/specification/workloads/resource-manager/Microsoft.Workloads/monitors/preview/2023-12-01-preview/monitors.json index 6dfdf1d23cbd..6c6243b4b835 100644 --- a/specification/workloads/resource-manager/Microsoft.Workloads/monitors/preview/2023-12-01-preview/monitors.json +++ b/specification/workloads/resource-manager/Microsoft.Workloads/monitors/preview/2023-12-01-preview/monitors.json @@ -1119,65 +1119,6 @@ } } }, - "ManagedServiceIdentity": { - "type": "object", - "description": "The Managed service identity.", - "properties": { - "principalId": { - "type": "string", - "format": "uuid", - "description": "The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.", - "readOnly": true - }, - "tenantId": { - "type": "string", - "format": "uuid", - "description": "The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.", - "readOnly": true - }, - "type": { - "$ref": "#/definitions/ManagedServiceIdentityType", - "description": "The type of managed service identity." - }, - "userAssignedIdentities": { - "$ref": "../../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/UserAssignedIdentities", - "description": "The user assigned identities." - } - }, - "required": [ - "type" - ] - }, - "ManagedServiceIdentityType": { - "type": "string", - "description": "The managed service identity for all identities.", - "enum": [ - "None", - "UserAssigned", - "SystemAssigned" - ], - "x-ms-enum": { - "name": "ManagedServiceIdentityType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "None", - "description": "No managed identity." - }, - { - "name": "UserAssigned", - "value": "UserAssigned", - "description": "The user assigned managed identity." - }, - { - "name": "SystemAssigned", - "value": "SystemAssigned", - "description": "The system assigned managed identity." - } - ] - } - }, "Monitor": { "type": "object", "description": "SAP monitor info on Azure (ARM properties and SAP monitor properties)", @@ -1192,7 +1133,7 @@ ] }, "identity": { - "$ref": "#/definitions/ManagedServiceIdentity", + "$ref": "../../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity", "description": "The managed service identities assigned to this resource." } }, @@ -1779,8 +1720,8 @@ } }, "identity": { - "$ref": "#/definitions/ManagedServiceIdentity", - "description": "The Managed service identity." + "$ref": "../../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity", + "description": "The managed service identities assigned to this resource." } } }, diff --git a/specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-10-01-preview/operations.json b/specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-10-01-preview/operations.json index 20de4a9f63c8..e23694864aa0 100644 --- a/specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-10-01-preview/operations.json +++ b/specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-10-01-preview/operations.json @@ -81,31 +81,6 @@ } } }, - "definitions": { - "Versions": { - "type": "string", - "description": "The available API versions.", - "enum": [ - "2023-12-01-preview", - "2023-10-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_12_01_preview", - "value": "2023-12-01-preview", - "description": "The 2023-12-01-preview API version." - }, - { - "name": "v2023_10_01_preview", - "value": "2023-10-01-preview", - "description": "The 2023-10-01-preview API version." - } - ] - } - } - }, + "definitions": {}, "parameters": {} } diff --git a/specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-12-01-preview/operations.json b/specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-12-01-preview/operations.json index 8b8332b7f8fe..1942de6d4ad4 100644 --- a/specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-12-01-preview/operations.json +++ b/specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-12-01-preview/operations.json @@ -81,31 +81,6 @@ } } }, - "definitions": { - "Versions": { - "type": "string", - "description": "The available API versions.", - "enum": [ - "2023-12-01-preview", - "2023-10-01-preview" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2023_12_01_preview", - "value": "2023-12-01-preview", - "description": "The 2023-12-01-preview API version." - }, - { - "name": "v2023_10_01_preview", - "value": "2023-10-01-preview", - "description": "The 2023-10-01-preview API version." - } - ] - } - } - }, + "definitions": {}, "parameters": {} }