{"id":5641,"date":"2015-03-24T10:00:00","date_gmt":"2015-03-24T10:00:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/webdev\/2015\/03\/24\/introducing-azure-api-apps\/"},"modified":"2015-03-24T10:00:00","modified_gmt":"2015-03-24T10:00:00","slug":"introducing-azure-api-apps","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/dotnet\/introducing-azure-api-apps\/","title":{"rendered":"Introducing Azure API Apps"},"content":{"rendered":"<p>As part of the Azure SDK 2.5.1 release, a new feature called Azure API Apps were included.\u00a0 This new feature raises the capabilities of ASP.NET Web API, extending it with <a href=\"http:\/\/swagger.io\/\">Swagger<\/a> metadata while providing a simple to manage interface in the <a href=\"https:\/\/d.docs.live.net\/8928e2f96ed79d89\/Documents\/blogPosts\/portal.azure.com\">Azure Portal<\/a>.\u00a0 Extend your API with authentication and no code changes, or generate an SDK for your API with a few clicks.\u00a0 A full definition of <a href=\"http:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/app-service-api-apps-why-best-platform\/\">API Apps and their capabilities<\/a> is available in the online Azure documentation. Video coverage of the <a href=\"http:\/\/blogs.msdn.com\/controlpanel\/blogs\/posteditor.aspx\/aka.ms\/azuremarch\">API Apps announcement with Scott Guthrie<\/a> is available online:<\/p>\n<p>Let\u2019s take a quick look at some concepts, with links to more information.<\/p>\n<ul>\n<li>API Apps live in an App Gateway.\u00a0 This gateway manages add-on functionality such as authentication and update policies for the API.\u00a0 A gateway resides on a single host.<\/li>\n<\/ul>\n<p style=\"text-align: center\">\u00a0<a href=\"https:\/\/devblogs.microsoft.com\/00\/00\/00\/63\/56\/6443.gateway.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/aspnet\/wp-content\/uploads\/sites\/16\/2015\/03\/6443.gateway.png\" alt=\"\" border=\"0\" \/><\/a><\/p>\n<ul>\n<li>Gateways are contained within a standard Azure Resource Group.<\/li>\n<li>API Apps can use connectors to access SaaS (software as a service) platforms such as Office 365 and Salesforce.<\/li>\n<li>When you create an Azure API App in Visual Studio, you can review the Swagger metadata for your app by navigating a web browser to the default web location of \/swagger\/docs\/v1 in your compiled and running project.<\/li>\n<\/ul>\n<p>Given the following ASP.NET API Controllers:<\/p>\n<p>The following swagger format is output:<\/p>\n<p style=\"text-align: center\"><a href=\"https:\/\/devblogs.microsoft.com\/00\/00\/00\/63\/56\/2273.swagger.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/aspnet\/wp-content\/uploads\/sites\/16\/2015\/03\/2273.swagger.png\" alt=\"\" border=\"0\" \/><\/a><\/p>\n<p>We have a complete tutorial online demonstrating how to get started <a href=\"http:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/app-service-dotnet-create-api-app\/\">defining your first API<\/a>, <a href=\"http:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/app-service-dotnet-deploy-api-app\/\">publishing the API<\/a> so that others can re-deploy it, and finally <a href=\"http:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/app-service-dotnet-deploy-api-app\/\">deploy the API<\/a> so that you can consume it.<\/p>\n<p>There is a lot of coverage of the introduction of our new Web App platform, you can learn more at the following links:<\/p>\n<ul>\n<li><a href=\"https:\/\/channel9.msdn.com\/Shows\/Azure-Friday\/Azure-App-Service-Web-Apps-with-Yochay-Kiriaty\">Channel 9 coverage of Web Apps<\/a><\/li>\n<li><a href=\"https:\/\/channel9.msdn.com\/Shows\/Azure-Friday\/Azure-App-Service-Logic-Apps-with-Josh-Twist\">Channel 9 talks about Logic Apps<\/a><\/li>\n<li><a href=\"https:\/\/channel9.msdn.com\/Shows\/Azure-Friday\/Azure-App-Service-Mobile-Apps-with-Kirill-Gavrylyuk\">Introduction to Mobile Apps on Channel 9<\/a><\/li>\n<li><a href=\"https:\/\/channel9.msdn.com\/Shows\/Azure-Friday\/Azure-App-Service-API-Apps-with-Scott-Hunter\">Scott Hunter and Scott Hanselman talk about API Apps on Channel 9<\/a><\/li>\n<li><a href=\"http:\/\/azure.microsoft.com\/blog\/2015\/03\/24\/announcing-azure-app-service\/\">The Azure blog is showcasing the entire platform<\/a><\/li>\n<\/ul>\n<p>If you have an active Azure subscription, navigate over to the <a href=\"http:\/\/blogs.msdn.com\/controlpanel\/blogs\/posteditor.aspx\/portal.azure.com\">Azure Portal<\/a> and try the new API Apps. \u00a0If you are new to Azure and don&#8217;t yet have a subscription, you can <a href=\"http:\/\/go.microsoft.com\/fwlink\/?linkid=523751&amp;clcid=0x409\">try Azure App Service<\/a> for free with no credit card and no commitment needed.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As part of the Azure SDK 2.5.1 release, a new feature called Azure API Apps were included.\u00a0 This new feature raises the capabilities of ASP.NET Web API, extending it with Swagger metadata while providing a simple to manage interface in the Azure Portal.\u00a0 Extend your API with authentication and no code changes, or generate an [&hellip;]<\/p>\n","protected":false},"author":405,"featured_media":58792,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[7497],"class_list":["post-5641","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aspnet","tag-announcements-announcement-azure-webapi"],"acf":[],"blog_post_summary":"<p>As part of the Azure SDK 2.5.1 release, a new feature called Azure API Apps were included.\u00a0 This new feature raises the capabilities of ASP.NET Web API, extending it with Swagger metadata while providing a simple to manage interface in the Azure Portal.\u00a0 Extend your API with authentication and no code changes, or generate an [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/5641","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/users\/405"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/comments?post=5641"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/5641\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media\/58792"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media?parent=5641"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/categories?post=5641"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/tags?post=5641"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}