@getdial/sdk - v0.38.0
    Preparing search index...

    Type Alias MessageStatusChangedData

    An advance on one of an outbound message's two independent axes.

    Delivery and reads are separate facts — not every rail reports both — so the payload carries the current value of BOTH axes plus changed naming the one that just moved. Each event is therefore a complete snapshot.

    type MessageStatusChangedData = {
        changed: "delivery" | "read";
        channel: "sms" | "imessage" | "rcs" | "unknown";
        deliveryError: string | null;
        deliveryState: MessageDeliveryState;
        from: string;
        messageId: string;
        phoneNumberId: string;
        readState: MessageReadState;
        to: string;
    }
    Index
    changed: "delivery" | "read"

    Which axis this event reports; the other is a current-value snapshot.

    channel: "sms" | "imessage" | "rcs" | "unknown"
    deliveryError: string | null

    Vendor-neutral reason; non-null only when deliveryState is undelivered/failed.

    deliveryState: MessageDeliveryState
    from: string
    messageId: string
    phoneNumberId: string

    The Dial number the message was sent from — filter the stream to one number.

    readState: MessageReadState
    to: string