ZenHub API Documentation

Introduction

Welcome to the ZenHub API documentation. This API allows you to interact with ZenHub's features programmatically, enabling you to integrate ZenHub's project management capabilities into your workflow.

Authentication

To use the ZenHub API, you need to authenticate your requests using a ZenHub API token. You can generate a token in your ZenHub account settings.

Include your API token in the Authorization header of your requests:

Authorization: Bearer <your-token>

Endpoints

GET /p1/repositories/:repo_id/boards

Retrieve the ZenHub board for a repository

GET https://api.zenhub.com/p1/repositories/:repo_id/boards

GET /p1/repositories/:repo_id/epics

List all epics for a repository

GET https://api.zenhub.com/p1/repositories/:repo_id/epics

POST /p1/repositories/:repo_id/issues/:issue_number/moves

Move an issue between pipelines

POST https://api.zenhub.com/p1/repositories/:repo_id/issues/:issue_number/moves

GET /p1/repositories/:repo_id/issues/:issue_number/events

Get the issue events

GET https://api.zenhub.com/p1/repositories/:repo_id/issues/:issue_number/events

Rate Limits

The ZenHub API has rate limits to ensure fair usage. Current limits are:

If you exceed the rate limit, you'll receive a 429 Too Many Requests response.

Pagination

For endpoints that return lists of items, ZenHub uses cursor-based pagination. Use the next_page value from the response to fetch the next page of results.

GET https://api.zenhub.com/p1/repositories/:repo_id/epics?next_page=:cursor

Webhooks

ZenHub supports webhooks for real-time updates. You can configure webhooks in your ZenHub workspace settings.

Available webhook events include:

Error Handling

The ZenHub API uses conventional HTTP response codes to indicate the success or failure of an API request:

Error responses will include a JSON body with more details about the error.

Changelog

For the latest updates and changes to the ZenHub API, please refer to our changelog.