API Overview
Release Pilot provides a RESTful API for programmatic access to all features.
Base URL
https://api.releasepilot.com/api/v1
Authentication
All API requests require authentication. Include your API key in the request headers:
Authorization: Bearer YOUR_API_KEY
API Endpoints
Releases
GET /projects/{projectId}/products/{productId}/releases- List releasesPOST /projects/{projectId}/products/{productId}/releases- Create releaseGET /projects/{projectId}/products/{productId}/releases/{releaseId}- Get releasePATCH /projects/{projectId}/products/{productId}/releases/{releaseId}- Update releaseDELETE /projects/{projectId}/products/{productId}/releases/{releaseId}- Delete release
Customer Sites
GET /projects/{projectId}/customer-sites- List customer sitesPOST /projects/{projectId}/customer-sites- Create customer siteGET /projects/{projectId}/customer-sites/{customerSiteId}- Get customer sitePATCH /projects/{projectId}/customer-sites/{customerSiteId}- Update customer siteDELETE /projects/{projectId}/customer-sites/{customerSiteId}- Delete customer site
Customer Site Releases
GET /projects/{projectId}/customer-sites/{customerSiteId}/releases- List attached releasesPOST /projects/{projectId}/customer-sites/{customerSiteId}/releases- Attach releaseDELETE /projects/{projectId}/customer-sites/{customerSiteId}/releases/{releaseId}- Detach release
Response Format
All responses are in JSON format:
{
"data": { ... },
"message": "Success",
"status": 200
}
Error Handling
Errors are returned with appropriate HTTP status codes:
400- Bad Request401- Unauthorized404- Not Found500- Internal Server Error
Error response format:
{
"error": "Error message",
"status": 400
}
Rate Limiting
API requests are rate-limited. Check response headers for rate limit information:
X-RateLimit-Limit: Maximum requests per windowX-RateLimit-Remaining: Remaining requestsX-RateLimit-Reset: When the limit resets
Pagination
List endpoints support pagination:
skip: Number of records to skipsize: Number of records per page
Example: ?skip=0&size=50
Filtering
Many endpoints support filtering via query parameters. See individual endpoint documentation for details.