GET
/logs/:tenantId/email
List emails

Returns a paginated list of emails sent by the tenant. Supports filtering by status, template code, and date range.

Request

// All fields are query parameters
type EmailLogQuery = {
  page?: number;
  pageSize?: number;
  status?: EmailStatus;
  templateCode?: string;
  fromDate?: string;  // ISO 8601
  toDate?: string;    // ISO 8601
};

Response

type EmailLogResponse = {
  total: number;
  page: number;
  pageSize: number;
  items: {
    id: number;
    emailCode: string;
    templateCode?: string;
    subject: string;
    status: EmailStatus;
    provider: string;
    recipientCount: number;
    createdAt: string;
    sentAt?: string;
  }[];
};
GET
/logs/:tenantId/email/:emailCode
Email details

Returns the full audit record for a single email including all recipients and event history. Intended for troubleshooting and compliance.

Request

// emailCode in path — no request body

Response

type EmailDetailsResponse = {
  id: number;
  emailCode: string;
  templateCode?: string;
  senderName: string;
  senderEmail: string;
  subject: string;
  htmlBody: string;
  status: EmailStatus;
  provider: string;
  providerMessageId?: string;
  errorMessage?: string;
  recipients: {
    type: string;
    emailAddress: string;
    userId?: string;
  }[];
  events: {
    eventType: string;
    eventMessage?: string;
    createdAt: string;
  }[];
  createdAt: string;
  sentAt?: string;
};