Guide to Software Project Management APIs
Editor's note: This is a series on API-based integrations. Check out Merge if you're looking to add 20+ project management integrations with one ticketing API.
Software project management tools are the system of record for development teams to organize their work. Given this central place in development workflows, they have well-developed APIs and are widely integrated with a variety of other software systems to automate development work.
This guide has everything you need to know about Software Project Management APIs:
- Top APIs - Which project management tools matter most
- Key concepts - How project management tools work
- Data schemas - How project management APIs organize ticketing data
- Use cases - Common ways project management data is used in product integrations
- Getting started - Approaching project management integrations to your product
Top Software Project Management APIs
Software project management tools are specialized for software development teams to track backlogs, issues, code commits, and bugs. Most of these tools are part of platforms that also include source code management (SCM) and continuous integration (CI/CD) capabilities, including Atlassian, Github, Gitlab, and Azure DevOps. Other tools are standalone project trackers, including Basecamp, Planview, Rally, and Linear. In both sets of tools, end users often mix and match solutions, making integrations very important to support software development workflows.
General purpose project management tools such as Asana, ClickUp, and Monday can also be used for software development. Check out the Guide to Project Management APIs for more. If you're looking for IT tools such as ServiceNow and Freshservice, we've got that covered in the Guide to IT Service Desks.
Related: Top ticketing integration examples
Key Software Project Management Concepts
Projects vs Repos
The most important distinction in how software project management tools are organized is the concept of the project itself. Many tools (e.g. Jira) are primarily organized by project, which typically aligns to a development team or portion of their scope. These tools also have the concept of repositories that are optional. Other tools (e.g. Github) are organized by repositories, a file directory for code. And some tools (e.g. Gitlab, Azure DevOps) allow for both concepts, though repositories are subordinate to projects in their data schemas.
Software Project Management API Data Schemas
Software teams organize their work by Collections (aka Projects or Repositories) which corresponds to a part of the software code base or a specific work initiative.
Within each project are Tickets (aka issues) that represent a piece of work or a bug to fix. Each ticket is related to a contact that created the work request and has assignees that are development team members responsible for the work. Tickets also have statuses, attachments, tags, and types.
Projects, and the tickets within them, are organized into Boards which track statuses and keep a rank of priority of tickets. Some systems may also have the concept of Epics, long running tasks that are collections of many Tickets.
Tickets may have Comments associated with them as the contact and assignees communicate back and forth. Comments also contain a body of text or HTML.
Requesters of a ticket are represented as Contacts, which include their name and email.
Developers are represented by Users, with names, emails, and roles. Users belong to Teams, which map to the development team org structure.
Top Software Project Management API Use Cases
Source code management (SCM) and CI/CD
Many popular software project management tools include source code management, continuous integration, and continuous deployment functionality in their platforms. These tools integrate to sync tickets with important software development objects such as code branches, commit messages, pull requests, builds, and deployments. In addition, some integrations even show relevant source code in the software project management tool.
Examples: Github, Gitlab, Bitbucket, Jenkins, Jfrog, Harness, CircleCI
Jira integrates with the Github API to show development status for a given issue (ticket), including branches and commits.
Application security testing
Many software teams require the use of static application security testing and composition analysis to detect security vulnerabilities during the development process. Software project management and application security testing software integrate to open tickets when a security vulnerability is discovered or trigger scans of code related to a ticket.
Examples: SonarQube, Snyk, Checkmarx, Synopsis, Veracode
Veracode integrates with Azure Board to add a new ticket (work item) from code found to violate security policies.
Product management
A key part of the software development process is collecting customer feedback and defining a roadmap, often using a product management tool. These tools integrate with software project management systems to sync roadmap items and to report on tickets once they are completed.
Examples: Aha, ProductPlan, Productboard, Uservoice
Aha integrates with Rally to sync tickets with requested features and product requirements.
Monitoring and observability
Application monitoring tools detect issues and raise alerts that are valuable for development teams to track. Software project management products integrate with monitoring tools to open tickets based on monitoring alerts, update the status or severity of a ticket, and close tickets when the alert is no longer active.
Examples: Datadog, Logic Monitor, NewRelic, AppDynamics, Dynatrace, Azure, AWS, Splunk, SolarWinds
Dynatrace integrates with Jira to create new issues (tickets) based on a problem notification and update the severity level.
Bug tracking
Software issues are also captured by bug tracking software. These tools integrate with software project management systems to sync tickets with related bugs, show commits and releases related to a given ticket, and provide easy access to the source code implicated by a bug.
Examples: Sentry, Instabug, Crashlytics, BugSnag, Honeybadger
Sentry integrates with the Gitlab API to link tickets with underlying errors and the related releases, commits, and source code.
Incident management
Once a bug or issue is tracked, incident management tools alert the proper on-call teams to triage and resolve the problem. Incident management systems and software project management tools integrate to show ticket status in the context of an incident.
Examples: PagerDuty, xMatters, Opsgenie, Statuspage
PagerDuty integrates with GitHub to show ticket updates on an incident.
Getting Started with Software Project Management APIs
In addition to understanding software project management API schemas, you’ll also want to keep in mind a few additional topics as you start building:
- API format - REST, SOAP, etc.
- Authentication
- Pagination
- Rate Limits
- Test Accounts
Merge unifies multiple software project management APIs into one, making it easy to integrate your app with every vendor that your customers use. The Unified Ticketing API is REST-based, with common authentication, pagination, and rate limiting. It also includes automated logging and issue detection to make integration maintenance painless.