---
title: "Get message log"
method: GET
path: "/api/messaging/logs/{id}"
tags: ["Message Logs"]
---

# Get message log

`GET /api/messaging/logs/{id}`

Find a log by ID.

#### Permissions

The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.

[Learn more about API scopes](/docs/platform/your-signalwire-api-space).

## Path parameters

- `id` string, uuid, required — Universal Unique Identifier.

## Response `200`

The request has succeeded.

- MessageLogRetrieveResponse — Response model for message log retrieve endpoint
  - `id` string, uuid, required — Universal Unique Identifier.
  - `from` string, required — The origin phone number.
  - `to` string, required — The destination phone number.
  - `status` 'queued' | 'initiated' | 'delivered' | 'sent' | 'received' | 'undelivered' | 'failed', required — The status of the message.
  - `direction` 'inbound' | 'outbound' | 'outbound-api' | 'outbound-call' | 'outbound-reply', required — The direction of the message.
  - `kind` 'sms' | 'mms', required — The kind of message.
  - `source` 'realtime_api' | 'laml', required — Source of this log entry.
  - `type` 'relay_message' | 'laml_message', required — Type of this log entry.
  - `url` string, uri, nullable, required — URL for the resource associated with this log entry. Null for Relay messages.
  - `number_of_segments` integer, required — The number of segments.
  - `charge` number, double, required — The charge in dollars.
  - `charge_details` MessageChargeDetail[], required — Details on charges associated with this log.
    - `description` string, required — Description for this charge.
    - `charge` number, double, required — Charged amount.
  - `created_at` string, date-time, required — Date and time when the message entry was created.
  - `error_message` string, nullable, required — Description of the error when the message failed. Null when the message did not fail. LaML messages use the codes documented at https://signalwire.com/docs/compatibility-api/rest/error-codes.
  - `error_code` string, nullable, required — Error code identifying why the message failed. Null when the message did not fail. Some Relay messages may have an `error_message` without an `error_code` — the `error_code` is a newer pattern that is not used in all Relay areas.

## Other responses

- `400` — The request is invalid.
- `401` — Access is unauthorized.
- `404` — The server cannot find the requested resource.
- `422` — The request contains invalid parameters. See errors for details.
- `500` — An internal server error occurred.

---

[API](https://skmtc.net/signalwire/apis/signalwire-rest-api.md) · [All operations](https://skmtc.net/signalwire/apis/signalwire-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/signalwire/signalwire-rest-api/versions/05c5164b85c7/schema)
