Error decoding lambda response: error decoding lambda response: unexpected end of JSON input

I have a following serverless function that triggers netlify build hook.

export default async (event) => {
  const {
    action,
    release: { tag_name, prerelease },
  } = await event.json();

  if (action !== "published") {
    return new Response(`Release skipped because it's not published yet`, {
      statusCode: 200,
    });
  }

  const buildHook = "<BUILD_HOOK>";
  const title = prerelease ? `Pre-release ${tag_name}` : `Release ${tag_name}`;
  const searchParams = new URLSearchParams();
  searchParams.append("trigger_branch", "main");
  searchParams.append("trigger_title", title);
  searchParams.append("clear_cache", "true");

  try {
    await fetch(`${buildHook}?${searchParams.toString()}`, {
      method: "POST",
    });

    return new Response(`Release succeeded`, {
      statusCode: 200,
    });
  } catch (err) {
    return new Response(
      JSON.stringify({
        message: err.message,
      }),
      {
        statusCode: 400,
      }
    );
  }
};

I have tried to run it locally with simulated payload and it worked.

However, when I call if from github webhook, when new release tag is created, I am getting “error decoding lambda response: error decoding lambda response: unexpected end of JSON input” error.

I read other similar questions but I can’t find å working solution

I was able to fix error by changing Content Type from application/x-www-form-urlencoded to application/json in Settings>Webhooks