---
title: "Get API request log details"
method: GET
path: "/logs/{requestId}"
tags: ["Logs"]
---

# Get API request log details

`GET /logs/{requestId}`

Retrieve detailed information about a specific API request log,
including the full request and response bodies.

**Body decryption:** Request and response bodies are stored encrypted
and automatically decrypted when retrieved. Bodies larger than 25KB
are truncated at storage time with a `... [truncated]` marker.

**Use cases:**
- Debug a specific failed request
- Review the exact payload sent/received
- Share request details with support

**Related endpoints:**
- `GET /logs` - List logs with filters

## Response `200`

API request log details

- LogDetailResponse — Detailed API request log with request/response bodies
  - `success` true, required
  - `data` LogEntryDetail, required — API request log entry (list view)
    - `requestId` string, required — Unique request identifier
    - `timestamp` string, date-time, required — When the request was made (ISO 8601)
    - `method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE', required — HTTP method
    - `path` string, required — Request path
    - `endpoint` string, required — Semantic endpoint name
    - `statusCode` integer, required — HTTP response status code
    - `durationMs` integer, required — Request duration in milliseconds
    - `error` object, nullable — Error details (null if request succeeded)
      - `code` string — Error code
      - `message` string, nullable — Error message
    - `context` object, required — Request context information
      - `ipAddress` string, nullable — Client IP address
      - `userAgent` string, nullable — User-Agent header
      - `idempotencyKey` string, nullable — Idempotency key if provided
      - `queryParams` object, nullable — Query parameters
    - `sdk` object, nullable — SDK information (null if not using an SDK)
      - `name` string — SDK name
      - `version` string, nullable — SDK version
    - `credential` object, required — API credential information
      - `id` string, required — Credential ID
      - `keyPrefix` string, nullable — API key prefix (first 8 characters)
    - `email` object, nullable — Email-specific data (for email endpoints)
      - `id` string — Email message identifier (token)
      - `recipientCount` integer, nullable — Number of recipients
    - `rateLimit` object, required — Rate limit state at time of request
      - `limited` boolean — Whether the request was rate limited
      - `limit` integer, nullable — Rate limit ceiling
      - `remaining` integer, nullable — Remaining requests in window
      - `reset` integer, nullable — Unix timestamp when limit resets
    - `request` object — Request body information
      - `bodySize` integer, nullable — Original request body size in bytes
      - `body` union — Decrypted request body (JSON or string). Bodies over 25KB are truncated.
        - object
        - string
    - `response` object — Response body information
      - `bodySize` integer, nullable — Response body size in bytes
      - `body` union — Decrypted response body (JSON or string). Bodies over 25KB are truncated.
        - object
        - string
  - `meta` ApiMeta, required
    - `requestId` string, required — Unique request identifier for debugging and support

## Other responses

- `400` — Invalid request parameters
- `401` — Invalid or missing API key
- `404` — Resource not found
- `429` — Rate limit exceeded
- `500` — Internal server error

---

[API](https://skmtc.net/arkhq-io/apis/ark-email-api.md) · [All operations](https://skmtc.net/arkhq-io/apis/ark-email-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/arkhq-io/ark-email-api/revisions/98a90852ffca/schema)
