Debugging Notification Failures with Sent Log Details

Log Details is the pop-up that opens when you click a notification log on the Sent Logs page. It brings together everything about that log, organized into these areas:

AreaWhat it shows
TraceEach hop the notification took, the time each hop took, and the final status.
Summary tabKey details of the log, such as the Message ID, channel, provider, and template.
Placeholders tabThe placeholders, or replaceable parameters, in the template that was used.
Content tabThe content sent in the notification, such as the message text or the email subject and body.
Response tabThe exact response received from the provider, including any error code.
Delivery tabThe delivery report received from the provider, for providers that share delivery status.
Notification RouteThe full path the notification took across channels and providers.

Debugging Notification Hops with Log Trace

The Trace appears on the left side of the Log Details pop-up. It summarizes each hop the notification took, how long each hop took, the total time, and the final status of the notification.

HopWhat it shows
Request ReceivedThe time the API was triggered and Fyno received the request for processing.
Sent To provider nameThe date and time the request was sent to the provider, and how long Fyno took to process it. The provider shown depends on the routing and notification event that were triggered.
Provider name’s ResponseThe date and time the provider’s response was received, and how long the provider took to respond.
Final StatusThe final status of the notification, such as Success, and the total time taken for its entire lifecycle.
Delivery StatusThe time the provider shared the delivery status. This hop appears only when the provider sends a delivery response.

In the example above, the notification was sent through Kaleyra.io, so the Trace shows Sent To Kaleyra.io and Kaleyra.io’s Response. Fyno took 121ms to process the request and Kaleyra.io took 147ms to respond. The notification was delivered successfully, so Final Status shows Success, with a total time of 268ms.

Click View Response on the Final Status hop to go straight to the tab with the details of the final response.

Reviewing Notification Trace and Summary Logs

When you open Log Details, the Summary tab is shown first, next to the Trace. It lists the key details of the log.

FieldWhat it shows
Message IDThe unique identifier of the message sent through a specific provider. If a notification fails with one provider and is sent through a failover provider, each attempt gets its own log and Message ID.
Request IDThe unique identifier of the request triggered through Fyno. Every log created by the same request shares one Request ID, even when the notification goes through multiple providers.
ChannelThe channel used for the notification: Messaging (SMS), WhatsApp, Email, Chat, or Push.
Provider NameThe provider used to send the notification you’re viewing. This can vary with your routing and notification event configuration.
DestinationThe recipient’s details, such as a phone number, email ID, or chat channel ID.
DateThe date you triggered the notification through the Fyno App.
TimeThe time you triggered the notification through the Fyno App.
Integration CustomThe name you gave the integration when you created a provider under a channel.
RoutingThe routing you created under the Integrations section.
TemplateThe name of the template used in the notification, created under the Templates section.
Notification EventThe name of the notification event that triggered the notification and created this log, created under the Notification Events section.
RetryThe attempt number of the notification within the notification event, starting at 0.

For example, if a notification event has 2 providers configured, and the notification fails with the first provider but is delivered by the second, there are 2 logs. The failed attempt shows Retry as 0, and the delivered attempt shows Retry as 1. To see both attempts together, open the Notification Route.

Request ID and Message ID are linked!
A Message ID starts with the Request ID of the request that created it. Its last 4 characters are unique to each provider.
To see every log created by one request, such as when the routing or notification event uses multiple providers, search for its Request ID in Filters.

Debugging Template Placeholders in Logs

The Placeholders tab shows the details of all the placeholders, or replaceable parameters, in the template used to trigger the notification event.

No details in Placeholders?
If the Placeholders tab is empty, the notification’s content had no replaceable parameters to display.
If a placeholder or base64 attachment is larger than 1 MB, you’ll see content omitted due to size, because Fyno doesn’t store content larger than 1 MB.

Understanding Log Content Details

The Content tab shows the details of the content sent in the notification. What you see depends on the channel:

DetailWhat it shows
Message contentThe static text of the message, along with any replaced parameters.
Type of MessageThe message type, such as Unicode, plain text, or a media type, depending on the content and channel.
Template IDThe Template ID, for SMS notifications that have one.
SubjectThe subject line, for email notifications.
BodyThe content of the email body, for email notifications.
If a placeholder or base64 attachment is larger than 1 MB, you’ll see content omitted due to size, because Fyno doesn’t store content larger than 1 MB.

Analyzing Provider API Responses in Logs

The Response tab shows the exact response Fyno received from the provider for the notification. This includes any error code, the final status of the notification, and the message content and trace details.

Tracking Notification Delivery Status in Logs

The Delivery tab shows the delivery response Fyno received from the provider used to send the notification. Because this information comes from the provider, the tab is available only for providers that send delivery status.

If Fyno hasn’t received any delivery status from the provider, the Delivery tab isn’t shown.

Providers fall into three groups, depending on whether and how they share delivery status.

Delivery Status Sent, No Extra Configuration

These providers share the delivery status without any webhooks or callbacks configured on their end.

Delivery Status can be Sent, Configuration Needed

These providers share the delivery status once they’re configured to do so. After that, the Delivery tab shows up in logs.

Delivery Status Not Sent, Configuration not available

These providers can’t share the delivery status, so the Delivery tab isn’t shown for them.

ChannelProviders
WhatsAppAiSensy
EmailGmail, Outlook
ChatSlack, Teams (by Microsoft)
A few other providers don’t share delivery status either, so Fyno can’t fetch it for them. Check with your provider for details.

Notification Route

To see the full path a notification took across channels and providers, click the route icon (the branching arrow) to the right of the tabs in the Log Details pop-up. This opens the Notification Route, which displays the path as a flow of blocks that begins at Start. Each block represents one attempt to send the notification through a channel and integration. For example, if a notification is sent on WhatsApp but isn’t delivered, and your route then sends it by email, the Notification Route shows two blocks: a WhatsApp block marked Undelivered, connected to an email block marked Delivered. You can open each block to see what happened during that attempt.

Reading Blocks and Connectors

Each block shows its channel, the integration used, and the status of that attempt, such as Delivered or Undelivered. Blocks are joined by connectors, and each connector’s label shows why the notification moved on to the next block.

Connector labelWhat it means
on successThe attempt in the previous block met the success criteria set in your route.
on failureThe attempt in the previous block failed or didn’t meet the success criteria set in your route.
wait forThe wait time configured in your route, such as how long Fyno waits for a delivered or read status before following the success or failure path. It can appear alongside an on success or on failure label.

To learn how success criteria and wait times are set up, see Omnichannel Routing.

Clicking on a Block to See Log Details

Click a block in the route to view details of that log. The block you’re viewing is highlighted, and its channel and integration appear at the top of the Trace. The Trace and the tabs, such as Response and Delivery, then show the details for that attempt.

To find out why an attempt failed, click its block and open the Response tab. It shows the provider’s response for that attempt, including the error code if there is one.