Tutorials for developing Azure DevOps Services extensions

Because of the diverse nature of extensions, we wanted to provide the right tutorial for you.

Below you'll find tutorials that cover different types of extensions so that you can learn the basics with a tutorial that's relevant to your goals as a developer.

Visual Studio Code icon
Build your first extension

This tutorial walks you through the entire extension creation process while you create a hub within Azure DevOps Services. From start to finish, you'll learn everything that you need to know about writing an extension and publishing it to the Marketplace.
Add a hub
Learn the basics of how to create a hub that can host a web page within a hub group within Azure DevOps Services.
Add a build task
Custom build tasks can be contributed by extensions; ensure that vital events are kicked off automatically when builds are started. This tutorial walks through adding two simple build tasks.
Extend the work item form
The work item form can be customized via contribution extensions. This tutorial shows a developer how to do things like: add a group to the main page, add a page or tab, add an action to the context menu, or even listen for events on the form.
Add a query context menu action
You can add custom actions to the context menu in the Queries hub with extensions. This tutorial walks through how to add a simple query context menu action that displays an alert when clicked.
Add backlog tabs
Similar to creating a hub, you can also create a tab in the backlog pages that can host a web page. This tutorial walks you through the basics of creating a backlog tab.
Add a new Service Endpoint
Service endpoints are a way for Azure DevOps Services to connect to external systems or services. Extensions can acquire stored details from the service endpoint to perform operations on that service. This tutorial walks through creating a custom service endpoint with data sources, and a build task that calls it.
Add a custom consumer service (Service Hooks)
Service hook publishers define a set of events. Subscriptions listen for the events and define actions to take based on the event. Subscriptions also target consumer services, which are external services that can perform their own actions, when an event occurs. This tutorial walks through creating a custom consumer service.
Add a dashboard widget
Widgets can be implemented into your Azure DevOps Services dashboard via contribution extensions. This tutorial is split into three parts: Creating a "Hello World" widget, Adding a call to an Azure DevOps Services REST API, Adding configuration to your widget.
Call a REST API
This short tutorial is to show a developer the correct syntax for calling a REST API within their extension. You can also choose to display the results of your API call in a grid afterwards.