> ## Documentation Index
> Fetch the complete documentation index at: https://watermelon.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Feature requests and feedback

export const CannyFeedback = () => {
  useEffect(() => {
    (async () => {
      try {
        const res = await fetch("https://api2-prod.watermelon.ai/iam/v1/users/canny/sso", {
          method: "POST",
          headers: {
            "Content-Type": "application/json"
          },
          credentials: "include"
        });
        const data = await res.json();
        (function (w, d, i, s) {
          function l() {
            if (!d.getElementById(i)) {
              var f = d.getElementsByTagName(s)[0], e = d.createElement(s);
              (e.type = "text/javascript", e.async = !0, e.src = "https://canny.io/sdk.js", f.parentNode.insertBefore(e, f));
            }
          }
          if ("function" != typeof w.Canny) {
            var c = function () {
              c.q.push(arguments);
            };
            (c.q = [], w.Canny = c, "complete" === d.readyState ? l() : w.attachEvent ? w.attachEvent("onload", l) : w.addEventListener("load", l, !1));
          }
        })(window, document, "canny-jssdk", "script");
        Canny('render', {
          boardToken: 'd2d8f7e5-4637-5ac0-511e-de04d4833e46',
          basePath: null,
          ssoToken: data.token,
          theme: 'auto'
        });
      } catch (err) {
        console.error("Failed to fetch Canny token:", err);
        (function (w, d, i, s) {
          function l() {
            if (!d.getElementById(i)) {
              var f = d.getElementsByTagName(s)[0], e = d.createElement(s);
              (e.type = "text/javascript", e.async = !0, e.src = "https://canny.io/sdk.js", f.parentNode.insertBefore(e, f));
            }
          }
          if ("function" != typeof w.Canny) {
            var c = function () {
              c.q.push(arguments);
            };
            (c.q = [], w.Canny = c, "complete" === d.readyState ? l() : w.attachEvent ? w.attachEvent("onload", l) : w.addEventListener("load", l, !1));
          }
        })(window, document, "canny-jssdk", "script");
        Canny('render', {
          boardToken: 'd2d8f7e5-4637-5ac0-511e-de04d4833e46',
          basePath: null,
          ssoToken: null,
          theme: 'auto'
        });
      }
    })();
  }, []);
  return <div data-canny />;
};

We believe that great products are built with the help and insights of their users. That’s why we’ve created this space for you to share your feedback, suggestions, and feature requests. We look forward to hearing your thoughts and bringing your ideas to life.

You need to be logged in to your Watermelon account to create or upvote a request.

<CannyFeedback />
