Set Up User Feedback

When a user experiences an error, Sentry provides the ability to collect additional feedback. You can collect feedback according to the method supported by the SDK.

Use the .NET SDK

You can create a form to collect the user input in your preferred framework, and use the SDK's API to send the information to Sentry. You can also use the widget, as described below. If you'd prefer an alternative to the widget or do not have a JavaScript frontend, you can use this API or a Web API.

Copied
using Sentry;

var eventId = SentrySdk.CaptureMessage("An event that will receive user feedback.");

SentrySdk.CaptureUserFeedback(eventId, "user@example.com", "It broke.", "The User");

Crash-Report Modal

Our embeddable, JavaScript-based, Crash-Report modal is useful when you would typically render a plain error page (the classic 500.html) on your website.

To collect feedback, the Crash-Report modal requests and collects the user's name, email address, and a description of what occurred. When feedback is provided, Sentry pairs the feedback with the original event, giving you additional insights into issues.

The screenshot below provides an example of the Crash-Report modal, though yours may differ depending on your customization:

An example of a Crash-Report modal with text boxes for user name, email, and additional details about the break.

Integration

The modal authenticates with your public DSN, then passes in the Event ID that was generated on your backend.

Make sure you've got the JavaScript SDK available:

Copied
<script
  src="https://browser.sentry-cdn.com/7.104.0/bundle.min.js"
  integrity="sha384-QLRjp0fR75x7D0LjPI+SXePWP9XQ0m2EmTJkX3pjLU45zt9uU2FgmiiqnMGl9w/N"
  crossorigin="anonymous"
></script>

You'll then need to call showReportDialog and pass in the generated event ID. This event ID is returned from all calls to CaptureEvent and CaptureException. There is also a function called LastEventIdthat returns the ID of the most recently sent event.

Copied
<script>
  Sentry.init({ dsn: "https://examplePublicKey@o0.ingest.sentry.io/0" });
  Sentry.showReportDialog({
    eventId: "{{ event_id }}",
  });
</script>
Help improve this content
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").