hosting
GET /v1/sites/{siteId}/web-logs
Get the tail of a site's access and error logs.
인증
Bearer 토큰으로 API 키를 전송하세요. 키는 반드시 sites.view 권한을 가지고 있어야 하며, 권한이 없는 키는 404가 아닌 403으로 거부됩니다.
이 엔드포인트는 조직 ID를 받지 않습니다. 사용자의 키가 이미 속한 조직을 식별하며, 응답은 해당 조직으로 한정됩니다.
무료 체험하기
대괄호 안에 있는 모든 내용을 사용자 지정 값으로 바꾸고, 키 플레이스홀더는 대시보드의 키로 바꾸세요.
curl -X GET https://api.zinndigital.com/v1/sites/{siteId}/web-logs \
-H "Authorization: Bearer zdk_live_…"로그인하셨나요? 대시보드의 API 콘솔이 실제 조직 ID와 본인의 키를 자동으로 채우고 라이브 API를 대상으로 요청을 실행하므로 실제 응답을 확인할 수 있습니다. API 콘솔에서 이 엔드포인트를 여세요
상세 정보
The customer's own web-server logs for their own site. Until this endpoint existed a customer could not see their access log **at all**, which is why *"why is my site slow"* was a support ticket rather than a tab. ⛔ **The path is `/web-logs`, deliberately not `/logs`.** `/v1/ops/logs` is Loki and staff-only, and two endpoints differing by a prefix are two endpoints somebody confuses in a runbook at three in the morning. ⛔ `access` is a list of the customer's **visitors'** IP addresses — personal data held under the customer's lawful basis, not ours. It is served only to a principal entitled to the site, must not be cached by the client, and both streams are cut to their most recent bytes so a busy site cannot answer with tens of megabytes; `truncated` says so rather than implying the tail is the whole. `unreadable` is `true` when the vendor answered with a body naming neither log — which is **not** the same as a site with no traffic, and must never render as two empty panes. Requires `sites.view` **and** `sites.panel_access`. `404` for a site with no managed hosting package.
매개변수
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
siteId (path) | Uuid | 예 | Site ID (UUIDv7). |
응답
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
access | string | 예 | The tail of the access log, or `""` when the vendor published none. |
error | string | 예 | The tail of the error log, or `""` when the vendor published none. On a misconfigured application it can carry absolute paths and credentials in a stack trace. |
truncated | boolean | 예 | Either stream was cut to its most recent bytes. Say so rather than implying the tail is the whole log. |
unreadable | boolean | 예 | The vendor answered with a body naming **neither** log. ⛔ Not the same as a site with no traffic, and must never render as two empty panes. |
이 엔드포인트가 반환할 수 있는 오류
401 · 403 · 404 · 429 · 503