{"id":97685,"date":"2025-06-30T08:00:00","date_gmt":"2025-06-30T15:00:00","guid":{"rendered":"https:\/\/opensource.microsoft.com\/blog\/?p=97685"},"modified":"2025-06-27T14:59:06","modified_gmt":"2025-06-27T21:59:06","slug":"expanding-platform-engineering-capabilities-with-radius-resource-types","status":"publish","type":"post","link":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/","title":{"rendered":"Expanding platform engineering capabilities with Radius Resource Types"},"content":{"rendered":"\n<p>The Azure Incubations team within the Azure Office of the CTO has contributed several projects to the Cloud-Native Computing Foundation (CNCF) including <a href=\"https:\/\/keda.sh\/\" target=\"_blank\" rel=\"noreferrer noopener\">KEDA<\/a>, <a href=\"https:\/\/dapr.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">Dapr<\/a>, <a href=\"https:\/\/github.com\/project-copacetic\/copacetic\" target=\"_blank\" rel=\"noreferrer noopener\">Copacetic<\/a>, <a href=\"https:\/\/drasi.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">Drasi<\/a>, and <a href=\"https:\/\/radapp.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">Radius<\/a>, the focus of this post. Radius enables platform engineers to build internal developer platforms that improve collaboration between enterprise application teams and platform engineering teams. It helps teams deliver cloud-agnostic applications using features like Recipes, Environments, and the Application Graph. If you are new to Radius, learn more on the <a href=\"https:\/\/radapp.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">Radius website<\/a>&nbsp;and try the <a href=\"https:\/\/docs.radapp.io\/getting-started\/\" target=\"_blank\" rel=\"noreferrer noopener\">Getting Started tutorial<\/a>.<\/p>\n\n\n\n<p>A couple of weeks ago we announced Radius Resource Types, a new feature directly guided by early adopter feedback that represents a major step forward for platform engineering. Radius already enables platform engineers to build internal developer platforms that are application-centric rather than infrastructure-centric. Now, with Radius Resource Types, platform engineers can define resource types specific to their organizations. Radius uses Recipes to implement these resource types. Radius Recipes can be new or existing Terraform configurations or Bicep templates. The great thing is that a single Radius Resource Type can have different Recipes depending on the Environment. Combining Radius Resource Types with Radius Recipes and Environments makes Radius a fully extensible and adaptable platform.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-16018d1d wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/docs.radapp.io\/getting-started\">Define, deploy, and collaborate on cloud-native applications with Radius<\/a><\/div>\n<\/div>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"radius-in-the-beginning\">Radius in the beginning<\/h1>\n\n\n\n<p>When we launched Radius, it was focused on bringing a cloud-neutral application model to cloud-native computing. Developers could define an application and its resources, including AWS, Azure, or Kubernetes types. The Radius Universal Control Plane understands these types and, in concert with Radius Environment configurations, deploys the application and its resources to the correct cloud provider and region.<\/p>\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2025\/06\/image-2.webp\" alt=\"A screenshot of a diagram\" class=\"wp-image-97686 webp-format\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"\" data-orig-src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2025\/06\/image-2.webp\"><\/figure>\n\n\n\n<p>Enterprises executing multi-cloud strategies highlighted to us the challenges they face building portable, cloud provider-agnostic applications. This motivated the team to build into Radius support for open-source, portable resource types as well as Dapr resource types, both of which allow developers to build applications which are completely portable across cloud providers when using Radius. Furthermore, Recipes and Environments enable platform teams to tailor these resource types for different requirements depending on the use case (a database could be configured differently for non-production versus production, for example). This achieves our original vision of Radius separating the application definition from the platform implementation.<\/p>\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2025\/06\/image-3.webp\" alt=\"A screenshot of a diagram\" class=\"wp-image-97687 webp-format\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"\" data-orig-src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2025\/06\/image-3.webp\"><\/figure>\n\n\n\n<p>While early adopters love using Recipes to deploy open-source and Dapr types, they also need the ability to add their own resource types. For example, their existing internal development platform (IDP) may support types required by their developers, but those were not supported by Radius. They need the ability to define their own types for Radius that are deployable via Recipes, just like the resource types built into Radius. In some cases, early adopters just needed to create a simple resource type, a PostgreSQL database for example, and let their developers specify a T-shirt size for the database their application requires. In other cases, they needed to create more complex, abstract types, such as a complete web service (including, for example, a reverse proxy, an application container, and an in-memory cache) encapsulated into a single resource type.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"introducing-radius-resource-types\">Introducing Radius Resource Types<\/h1>\n\n\n\n<p>To address this customer feedback, Radius Resource Types now extends Recipe support beyond just built-in resource types to any custom-defined resource type, enabling platform engineers to define their own resource types for their organization, each with a custom API for their developers.<\/p>\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2025\/06\/image-4.webp\" alt=\"A diagram of applications\" class=\"wp-image-97688 webp-format\" style=\"box-shadow:var(--wp--preset--shadow--natural)\" srcset=\"\" data-orig-src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2025\/06\/image-4.webp\"><\/figure>\n\n\n\n<p>The support for customized resource types completely decouples Radius from the definition of a resource type and the configuration of cloud resources. In other words, developers use the resource type interface, while platform engineers define the implementation. This decoupling gives platform engineers a powerful capability, and it improves the developer experience with application-centric resource types. It also allows platform engineers to change an implementation seamlessly, without impacting developers using the types.<\/p>\n\n\n\n<p>If you are interested in learning more about Radius and Radius Resource Types, watch the <a href=\"https:\/\/www.youtube.com\/watch?v=MNuoMSIs4Jo\" target=\"_blank\" rel=\"noreferrer noopener\">video recording<\/a> of my presentation and demo at the Radius June 2025 Monthly Community Call. You can also read the <a href=\"https:\/\/blog.radapp.io\/posts\/2025\/06\/17\/introducing-radius-resource-types\/\" target=\"_blank\" rel=\"noreferrer noopener\">Introducing Radius Resource Types<\/a> post on the Radius blog and <a href=\"https:\/\/docs.radapp.io\/tutorials\/new-app\/\" target=\"_blank\" rel=\"noreferrer noopener\">try out the tutorial<\/a> in the Radius documentation.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"additional-radius-resources\">Additional\u202fRadius resources<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Join\u202fthe\u202fmonthly\u202fRadius Community\u202fCall\u202fto see demos and hear the latest updates (join the\u202f<a href=\"https:\/\/groups.google.com\/g\/radapp_io\" target=\"_blank\" rel=\"noreferrer noopener\">Radius Google Group<\/a>\u202fto get email announcements).<\/li>\n\n\n\n<li>Join the discussion or ask for help on the\u202f<a href=\"https:\/\/aka.ms\/Radius\/Discord\" target=\"_blank\" rel=\"noreferrer noopener\">Radius Discord server<\/a>.<\/li>\n\n\n\n<li>Subscribe to the\u202f<a href=\"https:\/\/www.youtube.com\/@radapp_io\" target=\"_blank\" rel=\"noreferrer noopener\">Radius YouTube channel<\/a>\u202ffor more demos.<\/li>\n\n\n\n<li>Review\u202fthe Radius\u202f<a href=\"https:\/\/docs.radapp.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">documentation<\/a>\u202fand\u202f<a href=\"https:\/\/docs.radapp.io\/getting-started\" target=\"_blank\" rel=\"noreferrer noopener\">Getting Started<\/a>\u202fguide.<\/li>\n\n\n\n<li>Read the\u202f<a href=\"https:\/\/blog.radapp.io\/posts\" target=\"_blank\" rel=\"noreferrer noopener\">Radius\u202fBlog<\/a>.<\/li>\n\n\n\n<li>Check out <a href=\"http:\/\/github.com\/radius-project\" target=\"_blank\" rel=\"noreferrer noopener\">Radius code here<\/a>.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-msxcm-cta-block\" data-moray data-bi-an=\"CTA Block\">\n\t<div class=\"card d-block mx-ng mx-md-0\">\n\t\t<div class=\"row no-gutters material-color-brand-light bg-fabric-white\">\n\n\t\t\t\t\t\t\t<div class=\"col-md-4\">\n\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"600\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/09\/4.24-cta.png\" class=\"card-img img-object-cover\" alt=\"developer looking at code\" srcset=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/09\/4.24-cta.webp 600w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/09\/4.24-cta-388x388.webp 388w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/09\/4.24-cta-150x150.webp 150w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/09\/4.24-cta-450x450.webp 450w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/>\t\t\t\t<\/div>\n\t\t\t\n\t\t\t<div class=\"d-flex col-md\">\n\t\t\t\t<div class=\"card-body align-self-center p-4 p-md-5\">\n\t\t\t\t\t\n\t\t\t\t\t<h2>Radius<\/h2>\n\n\t\t\t\t\t<div class=\"mb-3\">\n\t\t\t\t\t\t<p>An open-source, cloud-native, application platform that enables developers and operators.<\/p>\n\t\t\t\t\t<\/div>\n\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"link-group\">\n\t\t\t\t\t\t\t<a href=\"https:\/\/radapp.io\/\" class=\"btn btn-link text-decoration-none p-0\" target=\"_blank\">\n\t\t\t\t\t\t\t\t<span>Learn more<\/span>\n\t\t\t\t\t\t\t\t<span class=\"glyph-append glyph-append-chevron-right glyph-append-xsmall\"><\/span>\n\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"azure-incubations-team-mission\">Azure Incubations\u202fTeam\u202fmission<\/h2>\n\n\n\n<p>The Azure Incubations Team\u202fmission\u202fis\u202fto work across the open-source community to explore and deliver technology that\u202fprovides\u202fvalue to the industry at large: not just Microsoft customers and not just Azure customers.\u202fWe focus on investments that help accelerate the industry\u2019s collective journey to the cloud, with projects like KEDA,\u202fDapr, Copacetic, Drasi,\u202fand Radius. Because these projects address the needs of the industry at large, our primary ship vehicle is\u202fopen-source\u202fsoftware. As such, all\u202fIncubations Team\u202fprojects have been donated to the Cloud-Native Computing Foundation (CNCF)\u202fwhich\u202fprovides a highly respected\u202fopen governance\u202fmodel.\u202fSo, while these projects were all\u202finitiated\u202fwithin the Azure Incubations team at Microsoft, the IP for all of them is\u202fowned by the CNCF,&nbsp;is\u202fmanaged via&nbsp;their open governance processes\u202fand the code for all is\u202ffreely available on\u202fGithub\u202fvia the&nbsp;Apache 2.0 license. Please follow the links above to learn more about and\u202fcontribute\u202fto\u202fany of\u202fthese projects.\u202f<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Now, with Radius Resource Types, platform engineers can define resource types specific to their organizations.<\/p>\n","protected":false},"author":6194,"featured_media":95465,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"msxcm_post_with_no_image":false,"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","footnotes":""},"post_tag":[308,723,158,218],"content-type":[346,361],"topic":[2244],"programming-languages":[2263],"coauthors":[651],"class_list":["post-97685","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-azure-kubernetes-service","tag-dapr","tag-kubernetes","tag-terraform","content-type-news","content-type-project-updates","topic-devops","programming-languages-postgresql","review-flag-2-1593580437-411","review-flag-new-1593580248-669"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Expanding platform engineering capabilities with Radius Resource Types | Microsoft Open Source Blog<\/title>\n<meta name=\"description\" content=\"Now, with Radius Resource Types, platform engineers can define resource types specific to their organizations. Learn more.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Expanding platform engineering capabilities with Radius Resource Types | Microsoft Open Source Blog\" \/>\n<meta property=\"og:description\" content=\"Now, with Radius Resource Types, platform engineers can define resource types specific to their organizations. Learn more.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Open Source Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-06-30T15:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1170\" \/>\n\t<meta property=\"og:image:height\" content=\"640\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Mark Russinovich\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:site\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mark Russinovich\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 min read\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/\"},\"author\":[{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/mark-russinovich\/\",\"@type\":\"Person\",\"@name\":\"Mark Russinovich\"}],\"headline\":\"Expanding platform engineering capabilities with Radius Resource Types\",\"datePublished\":\"2025-06-30T15:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/\"},\"wordCount\":919,\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.webp\",\"keywords\":[\"Azure Kubernetes Service\",\"Dapr\",\"Kubernetes\",\"Terraform\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/\",\"name\":\"Expanding platform engineering capabilities with Radius Resource Types | Microsoft Open Source Blog\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.webp\",\"datePublished\":\"2025-06-30T15:00:00+00:00\",\"description\":\"Now, with Radius Resource Types, platform engineers can define resource types specific to their organizations. Learn more.\",\"breadcrumb\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#primaryimage\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.webp\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.webp\",\"width\":1170,\"height\":640},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/opensource.microsoft.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Expanding platform engineering capabilities with Radius Resource Types\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"name\":\"Microsoft Open Source Blog\",\"description\":\"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability\",\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\",\"name\":\"Microsoft Open Source Blog\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"width\":259,\"height\":194,\"caption\":\"Microsoft Open Source Blog\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/OpenAtMicrosoft\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Expanding platform engineering capabilities with Radius Resource Types | Microsoft Open Source Blog","description":"Now, with Radius Resource Types, platform engineers can define resource types specific to their organizations. Learn more.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/","og_locale":"en_US","og_type":"article","og_title":"Expanding platform engineering capabilities with Radius Resource Types | Microsoft Open Source Blog","og_description":"Now, with Radius Resource Types, platform engineers can define resource types specific to their organizations. Learn more.","og_url":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/","og_site_name":"Microsoft Open Source Blog","article_published_time":"2025-06-30T15:00:00+00:00","og_image":[{"width":1170,"height":640,"url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.png","type":"image\/png"}],"author":"Mark Russinovich","twitter_card":"summary_large_image","twitter_creator":"@OpenAtMicrosoft","twitter_site":"@OpenAtMicrosoft","twitter_misc":{"Written by":"Mark Russinovich","Est. reading time":"4 min read"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#article","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/"},"author":[{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/mark-russinovich\/","@type":"Person","@name":"Mark Russinovich"}],"headline":"Expanding platform engineering capabilities with Radius Resource Types","datePublished":"2025-06-30T15:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/"},"wordCount":919,"publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.webp","keywords":["Azure Kubernetes Service","Dapr","Kubernetes","Terraform"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/","url":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/","name":"Expanding platform engineering capabilities with Radius Resource Types | Microsoft Open Source Blog","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#primaryimage"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.webp","datePublished":"2025-06-30T15:00:00+00:00","description":"Now, with Radius Resource Types, platform engineers can define resource types specific to their organizations. Learn more.","breadcrumb":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#primaryimage","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.webp","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO19_Ubisoft_Azure_037.webp","width":1170,"height":640},{"@type":"BreadcrumbList","@id":"https:\/\/opensource.microsoft.com\/blog\/2025\/06\/30\/expanding-platform-engineering-capabilities-with-radius-resource-types\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/opensource.microsoft.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Expanding platform engineering capabilities with Radius Resource Types"}]},{"@type":"WebSite","@id":"https:\/\/opensource.microsoft.com\/blog\/#website","url":"https:\/\/opensource.microsoft.com\/blog\/","name":"Microsoft Open Source Blog","description":"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability","publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/opensource.microsoft.com\/blog\/#organization","name":"Microsoft Open Source Blog","url":"https:\/\/opensource.microsoft.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","width":259,"height":194,"caption":"Microsoft Open Source Blog"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/OpenAtMicrosoft"]}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Open Source Blog","distributor_original_site_url":"https:\/\/opensource.microsoft.com\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/97685","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/users\/6194"}],"replies":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/comments?post=97685"}],"version-history":[{"count":12,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/97685\/revisions"}],"predecessor-version":[{"id":97812,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/97685\/revisions\/97812"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media\/95465"}],"wp:attachment":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media?parent=97685"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/post_tag?post=97685"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/content-type?post=97685"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/topic?post=97685"},{"taxonomy":"programming-languages","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/programming-languages?post=97685"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/coauthors?post=97685"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}