---
title: "Get a build's logs"
method: GET
path: "/gh/{ownerKeyOrId}/projects/{projectKeyOrId}/builds/{buildId}/logs"
tags: ["Builds"]
---

# Get a build's logs

`GET /gh/{ownerKeyOrId}/projects/{projectKeyOrId}/builds/{buildId}/logs`

## Request

- Base URL: `https://api.qlty.sh`
- URL: `https://api.qlty.sh/gh/{ownerKeyOrId}/projects/{projectKeyOrId}/builds/{buildId}/logs`
- Auth: HTTP bearer

Retrieves the complete output of a Build as plain text. Responds 404 once the logs are no longer retained, or for a Build that never started a container.

## Path parameters

- `ownerKeyOrId` string, required: Repository owner name (login) or workspace ID
- `projectKeyOrId` string, required: Repository name or project ID
- `buildId` string, required: Build ID

## Response `200`

The build's logs

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `429`: Rate Limit Exceeded
- `500`: Internal Server Error

## Changes

- **2026-09-15** `5e50966a89ec`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/qlty/apis/qlty-api/changes/gh/:ownerKeyOrId/projects/:projectKeyOrId/builds/:buildId/logs/get.md)

---

[API](https://skmtc.dev/qlty/apis/qlty-api.md) - [All operations](https://skmtc.dev/qlty/apis/qlty-api/llms.txt) - [OpenAPI document](https://skmtc.dev/qlty/apis/qlty-api/revisions/ebb6d6805741?raw)
