Email Log: gets a single row by its id.
GET
/api/twilio/email-log/{id}
deprecated
Requires: Twilio.EmailLog.View, merchant scope.
The tenant and merchant ids are required alongside the row id so the row can be located efficiently; callers normally already hold these values from a prior list result. The caller's operating-context scope is still enforced, so a row outside the caller's scope is not returned.
Example request
Every block below sends the same request. Replace {{BASE_URL}} with the address of the API you are calling and {{API_KEY}} with your own key.
The request body is a . See the Request body section below for its fields.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
id
required |
path | string (uuid) | The email-log row id. |
tenantId
required |
query | string (uuid) | Tenant id that scopes the lookup. |
merchantId
required |
query | string (uuid) | Merchant id that scopes the lookup. |
suppressNulls
required |
query | boolean | If true, omit properties with null values. |
Request body
application/json
, required
| Field | Type | Description |
|---|
This request body has no documented fields.
Responses
200 OK
Body: EmailLogDto
Each item has these fields.
| Field | Type | Description |
|---|---|---|
id
required |
string (uuid) | |
eventType
required |
string | nullable |
email
required |
string | nullable |
recipients
required |
string | Every visible recipient of an outbound message, semicolon-separated: the To addresses, then the CC addresses. Present on the gateway's send row only, and absent on rows written before it was recorded. BCC recipients are never listed. nullable |
fromEmail
required |
string | nullable |
replyToEmail
required |
string | nullable |
subject
required |
string | nullable |
timestamp
required |
string (date-time) | |
internalEventId
required |
string | nullable |
internalMessageId
required |
string | nullable |
messageId
required |
string | nullable |
correlationId
required |
string (uuid) | nullable |
kind
required |
string | What kind of message the row belongs to, for example `Receipt`, `Invoice` or `SecurityAlert`. Absent when the message declared no kind, and on rows recorded before kinds were recorded. nullable |
bypassedSuppression
required |
boolean | `true` when the message was sent past the bounce, spam-report and global unsubscribe suppression lists, which applies only to account-critical kinds such as `PasswordReset` and `SecurityAlert`. Present only on the gateway's send row for a message the mail provider accepted; absent on every other row, on a failed send, and on rows recorded before the bypass existed. nullable |
isSenderDomainAuthenticated
required |
boolean | |
scope
required |
EmailLogScopeDto | Read-only projection of the gateway scope under which an email row was recorded. Mirrors the domain `Scope` value object; `Empty` / `null` sentinels carry the same meaning (system-scoped or host-scoped). |
uniqueArguments
required |
object | nullable |
This response has no documented body fields.
403 Forbidden
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
401 Unauthorized
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
400 Bad Request
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
404 Not Found
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
501 Not Implemented
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
500 Internal Server Error
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
default The request failed. The body carries the standard error envelope: a machine-readable `error.code`, a human-readable `error.message`, and `error.validationErrors` when the failure was a validation rejection. See the error-code reference in this document's description for the values `error.code` can take.
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
429 The request was refused because a rate limit was exceeded. Wait at least the interval `Retry-After` names before retrying, then back off. Limits are tuned per deployment, so read the allowance from the response headers rather than assuming a fixed ceiling.
Body: RateLimitProblemDetails
Each item has these fields.
| Field | Type | Description |
|---|---|---|
type
required |
string | The problem type identifier. Always the same value: the failure is the status code itself, so there is no sub-type for a caller to branch on. nullable |
title
required |
string | A short, human-readable summary of the problem type. nullable |
status
required |
integer (int32) | The HTTP status code, repeated in the body as the problem-details format defines. |
detail
required |
string | A human-readable explanation of this occurrence of the problem. nullable |
retryAfterSeconds
required |
integer (int32) | How long to wait before retrying, in whole seconds, carrying the same figure as the `Retry-After` header. Always at least one: a value of zero would invite an immediate retry that is certain to be rejected again. |
This response has no documented body fields.
Errors
A failed request returns the platform error envelope. The
error reference lists every value
error.code can carry and shows the four response shapes.