---
title: "Get deployment build logs"
method: GET
path: "/sites/{id}/deployments/{deployment_id}/logs"
tags: ["Deployments"]
---

# Get deployment build logs

`GET /sites/{id}/deployments/{deployment_id}/logs`

## Request

- Base URL: `https://api.crevio.co/v1`
- URL: `https://api.crevio.co/v1/sites/{id}/deployments/{deployment_id}/logs`
- Auth: API key in header `Authorization`

Build output for a deployment, one entry per pipeline stage, oldest first.

Each stage's `log` is capped at 64KB of bytes, keeping the tail. Values matching common credential shapes are replaced with `[redacted]` before the log is stored.

## Path parameters

- `id` string, required
- `deployment_id` string, required

## Response `200`

The deployment's stages, each with the output its commands produced

- object
  - `object` 'list'
  - `data` object[]
    - `object` 'deployment_stage'
    - `name` 'provisioning' | 'fetching' | 'attaching' | 'installing' | 'building' | 'checking' | 'migrating' | 'deploying' | 'verifying' | 'restoring'
    - `status` 'active' | 'succeeded' | 'failed' | 'canceled': How the stage ended. `active` while it is still running.
    - `details` string, nullable: What this run of the stage is doing when the name alone is too coarse.
    - `started_at` string, date-time
    - `finished_at` string, date-time, nullable: Null while the stage is still running.
    - `duration_seconds` number
    - `log` string, nullable: Combined stdout/stderr of the stage's commands, capped at 64KB (tail kept).
  - `has_more` boolean
  - `url` string

## Other responses

- `401`: Authentication required
- `404`: Resource not found
- `429`: Rate limit exceeded — 600 requests per minute per credential. Retry after the number of seconds in `Retry-After`.

---

[API](https://skmtc.dev/crevio/apis/crevio-api-v1.md) · [All operations](https://skmtc.dev/crevio/apis/crevio-api-v1/llms.txt) · [OpenAPI document](https://skmtc.dev/crevio/apis/crevio-api-v1/revisions/2219f18ad651?raw)
