# Get deployment build logs (https://developer.godaddy.com/en/docs/references/rest/hosting/get-deployment-logs)

---
title: Get deployment build logs
description: >-
  Returns the full build and publish log stream captured for a deployment, as an
  ordered array of opaque lines.
full: true
---

Full description

> Returns the full build and publish log stream captured for a deployment, as an ordered array of opaque lines. `Deployment.logs` carries the same lines when they are available on the deployment itself; this operation is the canonical source and is safe to call while the deployment is still in progress.   These are builder logs. Logs emitted by the running application are read from `GET /apps/&#123;appId&#125;/logs`, which returns structured `LogEntry` objects instead.

## GET /apps/{appId}/deployments/{deploymentId}/logs

Get deployment build logs

Returns the full build and publish log stream captured for a deployment, as an ordered array of opaque lines. `Deployment.logs` carries the same lines when they are available on the deployment itself; this operation is the canonical source and is safe to call while the deployment is still in progress.

These are builder logs. Logs emitted by the running application are read from `GET /apps/{appId}/logs`, which returns structured `LogEntry` objects instead.


### Path parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `appId` | string | yes | Application identifier in `{PRODUCT}-{id}` form. The prefix is the application type in upper case — an upper-case letter followed by any number of upper-case letters, digits, or underscores — then a hyphen, then the identifier. For `NODEJS`, the suffix is a 10-character nanoid. Example: `NODEJS-aBcDeFgHiJ`. |
| `deploymentId` | string | yes | Deployment identifier returned in the `deploymentId` field of `POST /apps/{appId}/deployments`. |

### Header parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `traceparent` | string | no | W3C Trace Context identifier for this request. Clients should send a `traceparent` on every request so the trace can be correlated across services. See https://www.w3.org/TR/trace-context/ for the format. |

### Responses

**200** — Full log stream for the deployment.

Content-Type: `application/json`

Schema:

- schema reference: `#/x-ext/eb8fc65`

**401** — Authentication credentials are missing or invalid.

Content-Type: `application/json`

Schema:

- schema reference: `#/components/schemas/Error`

**403** — The caller is authenticated, but the request is not permitted: either the access token does not carry the scope this operation requires, or the operation is disabled for this account.

Content-Type: `application/json`

Schema:

- schema reference: `#/components/schemas/Error`

**404** — The requested resource does not exist.

Content-Type: `application/json`

Schema:

- schema reference: `#/components/schemas/Error`

**429** — Rate limit exceeded. A `429` response may come in one of two shapes: an empty body with `RateLimit-Limit`, `RateLimit-Remaining`, and `RateLimit-Reset` headers; or a JSON `Error` body with `Retry-After` and `RateLimit-*` headers. Clients should honour whichever headers are present and should not assume a JSON body is available on every `429`.

Content-Type: `application/json`

Schema:

- schema reference: `#/components/schemas/Error`

**501** — The request is contract-valid, but the operation, or a value the request names, is not applicable to this deployment. `details[].issue` is always `NOT_APPLICABLE`. For example, deployments and restarts are offered for `NODEJS` applications only, and a hosting product this deployment does not serve is answered here rather than with a `400`.

Content-Type: `application/json`

Schema:

- schema reference: `#/components/schemas/Error`

**503** — The service is temporarily unable to handle the request. Retry after a short delay. May include a `Retry-After` header hinting at when to retry.

Content-Type: `application/json`

Schema:

- schema reference: `#/components/schemas/Error`

**Security:** requires `bearerAuth`.
