OData Abfragen Richtung Azure DevOps: WorkItems mit IterationName und AreaName

Um WorkItems oder andere Entities aus Azure DevOps abzufragen, stellt Microsoft eine OData Schnittstelle zur Verfügung. Zugriff erfolgt per URL nach dem Schema:

https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/{version}/...   

Hierüber kann man WorkItems, Areas, Iterations, … abfragen. Was man alles Abfragen kann, bekommt man über das $metadata Schlüsselwort:

https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/v1.0/$metadata

Möchte man zu den WorkItems weitere Daten aus z.B. der Iteration oder der Area haben, so findet man die nicht bei der einfachen /WorkItems-Abfrage. Hier hilft das OData Schlüsselwort $expand . Damit kann man den NavigationProperties der Entität WorkItems folgen und Daten raus ziehen.

https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/v1.0/WorkItems?$select=WorkItemId,WorkItemType,Title,State,AreaSK,IterationSK&$expand=Iteration($select=IterationName,IterationPath),Area($select=AreaName,AreaPath)   

(Alle Properties mit der Erweiterung SK sind die Fremdschlüssel in die anderen Entitäten, die man ganz einfach mit $expand auflösen kann.)

Weitere supported OData Features in Azure DevOps findet Ihr bei Microsoft: https://docs.microsoft.com/en-us/azure/devops/report/extend-analytics/odata-supported-features?view=azure-devops

Happy coding!