by Contributed | May 24, 2021 | Technology
This article is contributed. See the original author and article here.
Today, we are announcing a preview NuGet package, template, and Visual Studio v16.10 publishing support for creating OpenAPI enabled Azure Functions.
The OpenAPI Specification is an API description format for REST APIs and has become the leading convention for describing HTTP APIs. An OpenAPI description effectively describes your API surface; endpoints, operation parameters for each, authentication methods, and other metadata. As a part of the ecosystem already rich with tools and open-source packages for .NET, we wanted to extend this capability to Azure Functions.
In the early days of Azure Functions, there was a preview feature that allow you to use the OpenAPI specification to document your functions or endpoints. This feature experience was built into the Azure Portal, but never realized in the GA version of the product.
Brady Gaster showed the benefit of a well-designed API using ASP.NET Core and OpenAPI in this post on the ASP.NET Blog.
Getting Started
Using Visual Studio 16.10 or later, create a new Azure Functions project and choose the HttpTrigger template – “Http Trigger with OpenAPI”.

The new function is bootstrapped with the necessary implementation for OpenAPI support. When running the application, notice not only does the function emit the “Function1” endpoint as expected but also additional routes for a dynamic endpoint for OpenAPI document, Swagger document in JSON or YAML, Authentication redirects and the Swagger UI interactive app.

The additional routes are encapsulated when the function app is deployed, meaning that they are there but not exposed as public viewable routes.
Browsing to the `/api/swagger/ui` endpoint show the Swagger UI page which can be thought of as interactive documentation

The dynamic endpoint for the OpenAPI document accepts the version (v2 or v3) of the specification and the extension preferred (json or yaml). In the following example /api/openapi/v2.json returns the appropriate version of the specification in JSON. Note that the emitted JSON includes the operationId, an attribute used to provide a unique string-based identifier for each operation in the API. See more about generating HTTP API clients using Visual Studio Connected Services.

Publish and CI/CD support
As you can imagine, yes right click publish support is here for you. Using the known publishing dialog, pushing your OpenAPI enable function to AppService or Containers and provisioning the needed Azure resources are all handled.

Nothing has changed with the publishing of a new Azure Function, unless you want to also want to use this as a custom connector for your Power Apps. In Visual Studio 16.9 we added support for publishing to an existing Azure API Management service instances and creating new Consumption-mode instances of Azure API Management so you can use the monitoring, security, and integration capabilities of API Management.
In Visual Studio 16.10, the functionality is extended to support the Azure Function project that includes OpenAPI capabilities. When you are publishing an Azure Function with OpenAPI, the API Management tab allowing for selecting an existing instance or creating a new one.

Once the publish operation completes, you’ll be able to view and test the API operations within the API Management portal blade.
As an additional option, the provisioning and deployment of the Azure Function and related resources is now also available as a GitHub Action if your code in committed to a repository.

On finishing the publish dialog, a GitHub Action is created and committed to the repository triggered by a push of any change.

Using either method publishes or updates your Azure Function, creates or updates the API Management instance AND imports the function for you.
Azure API Management
Typically when adding a new API to the API Management instance you would have to manually define names, operations, parameters, endpoints and other metadata. When using the OpenAPI Extension, this is all done for you and any subsequent updates are also handled automatically. The following image shows the “Run” operation from the Azure Function along with all the configuration complete.

Add OpenAPI support to existing projects
For adding OpenAPI support to your existing Azure Functions, the Microsoft.Azure.WebJobs.Extensions.OpenApi package is available for .NET functions using the HttpTrigger. With just a few method decorators, the package makes your existing functions endpoints optimized for discovery.
public static class SayHello
{
[FunctionName("SayHello")]
[OpenApiOperation(operationId: "Run", tags: new[] { "name" })]
[OpenApiParameter(name: "name", In = ParameterLocation.Query, Required = true, Type = typeof(string), Description = "Who do you want to say hello to?")]
[OpenApiResponseWithBody(statusCode: HttpStatusCode.OK, contentType: "text/plain", bodyType: typeof(string), Description = "The OK response")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
log.LogInformation("C# HTTP trigger function processed a request.");
string name = req.Query["name"];
…
return new OkObjectResult(responseMessage);
}
}
}
In this example, the AuthorizationLevel is set to “Anonymous”, however with the OpenApiSecurity decorator, using either “code” through querystring or “x-functions-key” through headers; additional security can be applied.
Summary
To learn more about the Azure Functions OpenAPI extension, visit the project on GitHub and checkout the preview documentation. As always. We’re interested in your feedback, please comment below and/or provide more in the issues tab on the repository.
We can’t wait to see what you build.
by Contributed | May 24, 2021 | Technology
This article is contributed. See the original author and article here.
We’re in the midst of our Microsoft Mechanics series on Microsoft Viva, the first employee experience platform (EXP) built for the digital era. In our last video, we dove into Viva Topics, which delivers company knowledge and expertise in the context of your work. Today, we’re taking a look at Viva Connections. I’ve joined Jeremy Chapman, the host of Microsoft Mechanics, to walk through the user experience as well as the steps for IT admins to setup and implement the module, including options for personalizing information sharing by role.
User experience. If you’re a Microsoft SharePoint user, you’ll recognize the experience immediately. Viva Connections expands upon your SharePoint home site and news feed to give you a curated, company-branded experience that brings together relevant news, conversations, and other resources in the context of the apps you use every day, like Microsoft Teams. The experience looks, feels, and functions the same as the SharePoint home site. Some of the integrations are the same too: Microsoft Yammer and Microsoft Stream bring conversations and videos to life in Viva Connections, while the intranet search experience is available from the Teams search experience. The module is currently available on Teams desktop and web as a pinned app in your left sidebar, with mobile coming later this year.

IT admin experience to set up. You might be asking yourself, “Do I need to create a separate SharePoint site to use Viva Connections?” Not at all. The module leverages your existing SharePoint home site and requires just a few steps to integrate it with Teams. You’ll actually start the process in SharePoint by enabling and setting up global navigation. Global navigation brings your SharePoint app bar—home, sites, news, and files—into Teams. Go to aka.ms/SetupGlobalNav for setup details. You’ll also want to add a Yammer Conversations web part to your home site to keep important conversations front and center in Viva Connections.
For now, the last step to create and add a Viva Connections app to your Teams environment happens in PowerShell, but we’ll be adding another option through the Teams admin center soon. To get started, download the viva-connections-desktop PowerShell script from aka.ms/VivaConnectionsPSBlog. Then, find a pair of .png images of your organization’s logo to associate with Viva Connections: one for the app catalog and one for the Teams app navigation bar. You can now run the PowerShell script, which will prompt you for a URL to your home site, a name for the app in Teams, a short and long description of the app, your company name and the URL for your public website, and the icons you selected. Finally, navigate to your Teams admin center, select Manage apps, and upload the PowerShell package you just created. Viva Connections is now available all your users in Teams.
This is a very brief overview of the PowerShell step, and while it’s easy to complete, you’ll want to watch the Microsoft Mechanics video above for exact instructions. The video has additional guidance for pinning the app by default to your users’ Teams app navigation bar.

IT admin experience to personalize. In addition to what comes straight from your SharePoint home site, like company news, Viva Connections uses adaptive cards to bring even more curated and customized resources to your users in a new dashboard view coming later this summer, like time off submission and expense reporting. The adaptive cards are quick informational bites that link out to more details, like a full webpage or Teams app, when tapped.
To add adaptive cards to the dashboard view, you can choose premade cards from Microsoft or Microsoft partners, or create your own. Building your own is an intuitive, visual experience in SharePoint that looks a lot creating a page. In the new Viva Connections Dashboard authoring experience that we’re building into SharePoint, you can choose a template or start from scratch, set card display options, and move the card into different positions on the dashboard. Once your card is ready, you can determine which groups in your organization will see it using the Audience targeting field in the card display options.

You can start using Viva Connections now on Teams desktop as we continue to work on delivering the mobile experience and Dashboard capabilities later this year. Get started by building your SharePoint home site with global navigation enabled, adding Yammer Communities and modern pages, and connect Viva Connections to your Teams environment. This is Part Three of our Microsoft Mechanics video series about Microsoft Viva. Keep visiting this site or aka.ms/VivaMechanics for the rest of the series. If you’d like more information on Viva in the meantime, head over to aka.ms/Viva.
As always, we want to hear from you! If you have any suggestions, questions, or comments, please visit us on our Microsoft Viva Tech Community page. We will also be hosting our first Microsoft Viva Ask Microsoft Anything (AMA) event on June 23, 2021. There will be more information on that event soon.
Learn more:
by Contributed | May 24, 2021 | Technology
This article is contributed. See the original author and article here.
In this #ProudToBeCertified blog series, we’re highlighting stories of Microsoft-certified professionals and how certification changed their career paths – even at the very beginning of their professional life or new career. These personal narratives show how getting certified is a great way for you to build a credible track record of productivity while demonstrating you have the fortitude for continuous learning to support your new career in tech right from the start.
Rachitha: Her career got a boost before it even began
Even though Rachitha Tholasi’s professional career hasn’t started yet, her Microsoft Certifications are already playing a powerful role. She’s a senior at Virginia Tech, dual majoring in business information technology and management consulting. Through her course selections, she discovered a passion for cloud computing. Her love of the topic led her to earn the Microsoft 365 and Azure fundamentals certifications.

For Rachitha, earning her first certification proved useful by facilitating her real-world knowledge of the topics she was studying in school. She found that Microsoft Certifications helped her understand the cloud and emerging technology as a whole.
As her senior year progressed, her job search began. By letting the world know that she was #ProudToBeCertified, Rachitha has found more career opportunities. “Once I posted that I received these certifications on LinkedIn, I received a lot of InMail from recruiters for cloud positions.” Many LinkedIn members have a similar experience – with those listing at least five skills on their profiles receiving up to 27 times more messages than those who don’t.1
And those efforts have paid off. “I was able to receive my dream job offer from Microsoft as a Customer Account Success Manager by doing these certification exams.” She continues, “It’s given me a realization that I can do anything when I have a passion for it.”
Salman: While searching for confidence, he found a love of learning
Salman Chishti, a Cloud Solution Architect Intern at Microsoft, holds a number of Microsoft Certifications including the Microsoft Certified: Azure Solutions Architect Expert, DevOps Engineer Expert, and Azure Data Engineer Associate certifications, just to name a few. For Salman, it’s not just about the knowledge itself; it’s about knowing that he has the knowledge.
His learning journey in technology began in high school, where he became interested in working with .NET and C#. But when he went to university, he discovered there were no courses in what he wanted to study. That’s what led him to online educational resources such as Microsoft Docs and Microsoft Learn. Through these experiences, Salman saw doors open up with opportunities to work in new technologies and verticals at Microsoft.
Coming in as an intern at Microsoft, Salman found himself among team members who had 10+ years of experience. This could certainly be overwhelming, so he realized he had to build his technical skills and knowledge, leveraging Microsoft’s role-based certifications as milestones. He began with the fundamentals, moving on to associate-level certifications, then expert. In doing so, he says “I fell in love with the process of being able to learn and then apply it to my everyday role.”
Now, when Salman works with those who have decades of experience, he has the confidence that he can contribute at a high level. With his certification credentials, his teammates know they’re working with a dedicated, well-trained, and highly skilled professional who’s willing to continue learning.

Tony: How a veteran keeps serving his country
Even though Tony Hernandez was finishing his US military service, he wanted to continue giving back to his country in some capacity. With the help of Microsoft Certifications, he has been able to launch a new career as a Cloud Engineer, providing technology solutions to government agencies.
As he was preparing to leave the military, Tony learned about the Microsoft Software and Systems Academy (MSSA). It provides career skills training to service members transitioning from the military to civilian life. Through MSSA, he began his technical training and certification journey with Microsoft Learn.
As he was preparing for the certification exam, Tony took advantage of resources included in his learning path. He created a free Azure sandbox online to experience the concepts while studying with the text, videos, and knowledge checks on Microsoft Learn. He says “basically everything you need to know is there, just follow along.”
After earning his certification, he’s not stopping. His next goal is to become an Azure Solution Architect, preparing him for future advances in cloud technology and ensuring that his expertise stays current with the constant demand. He couldn’t be more pleased, “Taking this exam and becoming certified was the best decision of my life.”

Keep moving. Stay inspired.
Whether you’re in university, starting a new career, or well-established in technology, Microsoft Certification can give you a boost. Keep an eye out for more posts on how certifications have helped advance careers. You’ll learn how people overcame barriers to advancement, thrived in adversity, and added new life to their existing roles – all by nurturing a commitment to having a growth mindset and continuously learn.
What was your journey to earning a Microsoft Certification?
We want to hear your #ProudToBeCertified story. After all, you are the certification community. The more we all share our experiences, the more supported and encouraged we are to go for what we want. Check out more #Proud to be Certified videos and submit your video or post on Twitter, LinkedIn, or your preferred platform with #ProudToBeCertified.
Related posts:
1Global Knowledge’s 2020 IT Skills and Salary Report
by Contributed | May 24, 2021 | Technology
This article is contributed. See the original author and article here.

Join us for this month’s community call where we will continue with our every 4th Tuesday of the month schedule, occurring on May 25th! Join us at either 8:00 AM or 5:00 PM PT.
We are excited to have the Sharing is Caring community join us to talk about their group!
If you are looking to learn how to use the Microsoft 365 community resources or contribute back to the community and are unsure where to start, the Patterns and Practices “Sharing is Caring” team is here for you!
Using hands-on guidance in safe space sessions, you can learn how to overcome technical and non-technical hurdles that prevent you from getting more involved in the community.
PnP | Sharing Is Caring
If you have not yet joined our champion community, signup here to get the resource links that contain access to the call calendar, invites, program assets, and previous calls!
http://aka.ms/m365champions
We look forward to seeing you there!
/Josh
by Contributed | May 24, 2021 | Technology
This article is contributed. See the original author and article here.
Update: Monday, 24 May 2021 13:35 UTC
Root cause has been isolated to capacity issue which caused data latency. To address this issue we increased the capacity. Some customers may continue to experience intermittent data latency and incorrect intermittent data latency and incorrect alert activation for resources in South UK region.
- Work Around: None
- Next Update: Before 05/24 15:00 UTC
-Mohini
Recent Comments