I am trying to POST to using C# to a JSON payload which I can achieve but I am having trouble understanding how to replace the sample string with my own string.
From the code below you can see I have a string I want to send to my weblink. The code runs fine when I use "{\"text\":\"Hello, World!\"}" for the StringContent but if I try to replace it with the string of output_message it doesn't work. I am trying to work out how I convert my output_message to a format that JSON can recognize.
    {
        string output_message = "The file " + filename + " has been modified by " + user_modified + " and moved to the " + file_state + " file state. Please review the " + filename + " file and approve or reject.";            
        PostWebHookAsync(output_message);
        Console.ReadLine();
    }
    static async void PostWebHookAsync(string Aoutput_message)
    {
        using (var httpClient = new HttpClient())
        {
            using (var request = new HttpRequestMessage(new HttpMethod("POST"), "www.mywebsitelink"))
            {
                //request.Content = new StringContent("{\"text\":\"Hello, World!\"}", Encoding.UTF8, "application/json");  // - original do not delete
                request.Content = new StringContent(Aoutput_message, Encoding.UTF8, "application/json");
                var response = await httpClient.SendAsync(request);
               Console.WriteLine(response.StatusCode);
               Console.WriteLine(response.Content);
            }
        }
    }
I want to replace "{\"text\":\"Hello, World!\"}" with a string




$"\{\"text\":\"{output_message}\"\}"or$"\{\"value\":\"{output_message}\"\}", or even$"[\"{output_message}\"]"