Forum Discussion
mamathal
Dec 05, 2024Copper Contributor
Need help on rest api for creating a report
Hi, I need to create a jason report to extract list of release id and workitems related to the releases from all the projects areas in an organization. Please help me in any script you might have.
Kidd_Ip
Dec 05, 2024MVP
Try sample on below
import requests
import json
# Replace these variables with your Azure DevOps organization and personal access token
organization = 'yourorganization'
pat = 'yourpat'
project = 'yourproject'
# Base URL for Azure DevOps REST API
base_url = f'https://dev.azure.com/{organization}/{project}/_apis/'
# Headers for the request
headers = {
'Content-Type': 'application/json',
'Authorization': f'Basic {pat}'
}
# Function to get releases
def get_releases():
url = f'{base_url}release/releases?api-version=7.1-preview.6'
response = requests.get(url, headers=headers)
return response.json()
# Function to get work items related to a release
def get_work_items(release_id):
url = f'{base_url}release/releases/{release_id}/workitems?api-version=7.1-preview.6'
response = requests.get(url, headers=headers)
return response.json()
# Get all releases
releases = get_releases()
# Extract release IDs and related work items
report = []
for release in releases['value']:
release_id = release['id']
work_items = get_work_items(release_id)
report.append({
'release_id': release_id,
'work_items': work_items['value']
})
# Save the report to a JSON file
with open('release_report.json', 'w') as f:
json.dump(report, f, indent=4)
print('Report generated successfully!')