Skip to content
Back to Blog

Enviar Mensagens para Canais do WhatsApp Usando C NET

Aprenda como enviar mensagens automatizadas e agendadas para seus WhatsApp Channels para manter seu público engajado e atualizado usando C# (.NET) em passos simples com exemplos de código prontos para uso.

🤩 🤖 Wassenger é uma plataforma de comunicação completa e solução de API para WhatsApp. Explore mais de 100+ casos de uso da API e automatize qualquer coisa no WhatsApp inscrevendo-se em um teste gratuito e comece em minutos!

Isto nos permitirá realizar os seguintes envios

  • Enviar mensagens de texto
  • Enviar mensagens de texto agendadas
  • Enviar imagens
  • Enviar vídeos
  • Enviar enquetes
  • Enviar enquetes agendadas

Requisitos

  • Ter um número do WhatsApp já vinculado à plataforma e online.
  • ID do Canal WhatsApp (WID) que você pode encontrar de duas formas:
  1. No seu painel de gerenciamento do número do WhatsApp, vá em “Grupos”. A partir daí você verá os canais aos quais seu número tem acesso.
  2. Utilizando a API, consulte os canais disponíveis no seu dispositivo por meio deste endpoint.

Endpoint da API

Neste tutorial usaremos o seguinte endpoint da API:

Explore como usar o código no seu navegador sem instalar qualquer software.

Além disso, você pode encontrar diferentes linguagens que pode testar no Replit.com:

# Enviar mensagens de texto usando C# (RestClient)

// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "ENTER API KEY HERE");
request.AddParameter("application/json", "{\"channel\":\"{{channel}}\", \"message\":\"This is a sample message sent to a channel\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

# Enviar mensagens de texto usando C# (HttpClient)

// This code uses the built-in HttpClient package in the.NET framework.
// Documentation: https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-6.0
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post, 
RequestUri = new Uri("https://api.wassenger.com/v1/messages"), 
Headers =
{
{ "Token", "ENTER API KEY HERE" }, 
}, 
Content = new StringContent("{\"channel\":\"{{channel}}\", \"message\":\"This is a sample message sent to a channel\"}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using(var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}

# Enviar mensagens de texto agendadas usando C# (RestClient)

// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "ENTER API KEY HERE");
request.AddParameter("application/json", "{\"channel\":\"{{channel}}\", \"message\":\"This is a sample message sent to a channel\", \"deliverAt\":\"2024-10-08T16:51:52.830Z\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

# Enviar mensagens de texto agendadas usando C# (HttpClient)

// This code uses the built-in HttpClient package in the.NET framework.
// Documentation: https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-6.0
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post, 
RequestUri = new Uri("https://api.wassenger.com/v1/messages"), 
Headers =
{
{ "Token", "ENTER API KEY HERE" }, 
}, 
Content = new StringContent("{\"channel\":\"{{channel}}\", \"message\":\"This is a sample message sent to a channel\", \"deliverAt\":\"2024-10-08T16:51:52.830Z\"}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using(var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}

🤩 🤖 Wassenger é uma solução completa de API para WhatsApp. Inscreva-se para um teste gratuito de 7 dias e comece em minutos!

# Enviar uma imagem para canais usando C# (RestClient)

// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "ENTER API KEY HERE");
request.AddParameter("application/json", "{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for an image message\", \"media\":{\"url\":\"https://picsum.photos/seed/picsum/600/400\", \"viewOnce\":false}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

# Enviar uma imagem para canais usando C# (HttpClient)

// This code uses the built-in HttpClient package in the.NET framework.
// Documentation: https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-6.0
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post, 
RequestUri = new Uri("https://api.wassenger.com/v1/messages"), 
Headers =
{
{ "Token", "ENTER API KEY HERE" }, 
}, 
Content = new StringContent("{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for an image message\", \"media\":{\"url\":\"https://picsum.photos/seed/picsum/600/400\", \"viewOnce\":false}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using(var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}

# Enviar um vídeo para canais usando C# (RestClient)

// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "ENTER API KEY HERE");
request.AddParameter("application/json", "{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for a video message\", \"media\":{\"url\":\"https://download.samplelib.com/mp4/sample-5s.mp4\", \"viewOnce\":false}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

# Enviar um vídeo para canais usando C# (HttpClient)

// This code uses the built-in HttpClient package in the.NET framework.
// Documentation: https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-6.0
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post, 
RequestUri = new Uri("https://api.wassenger.com/v1/messages"), 
Headers =
{
{ "Token", "ENTER API KEY HERE" }, 
}, 
Content = new StringContent("{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for a video message\", \"media\":{\"url\":\"https://download.samplelib.com/mp4/sample-5s.mp4\", \"viewOnce\":false}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using(var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}

# Enviar enquetes usando C# (RestClient)

// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "ENTER API KEY HERE");
request.AddParameter("application/json", "{\"channel\":\"$channel_ID@newsletter\", \"poll\":{\"name\":\"Vote for your favorite color\", \"options\":[\"Red\", \"Green\", \"Blue\", \"Yellow\", \"Grey\", \"Black\", \"Orange\", \"Purple\", \"White\"]}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

# Enviar uma enquete usando C# (HttpClient)

// This code uses the built-in HttpClient package in the.NET framework.
// Documentation: https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-6.0
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post, 
RequestUri = new Uri("https://api.wassenger.com/v1/messages"), 
Headers =
{
{ "Token", "ENTER API KEY HERE" }, 
}, 
Content = new StringContent("{\"channel\":\"$channel_ID@newsletter\", \"poll\":{\"name\":\"Vote for your favorite color\", \"options\":[\"Red\", \"Green\", \"Blue\", \"Yellow\", \"Grey\", \"Black\", \"Orange\", \"Purple\", \"White\"]}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using(var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}

🤩 🤖 Wassenger é uma solução completa de API para WhatsApp. Inscreva-se para um teste gratuito de 7 dias e comece em minutos!

# Enviar uma enquete agendada usando C# (RestClient)

// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "ENTER API KEY HERE");
request.AddParameter("application/json", "{\"channel\":\"$channel_ID@newsletter\", \"deliverAt\":\"2024-10-23T13:26:35.176Z\", \"poll\":{\"name\":\"Vote for your favorite color\", \"options\":[\"Red\", \"Green\", \"Blue\", \"Yellow\", \"Grey\", \"Black\", \"Orange\", \"Purple\", \"White\"]}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

# Enviar uma enquete agendada usando C# (HttpClient)

// This code uses the built-in HttpClient package in the.NET framework.
// Documentation: https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-6.0
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post, 
RequestUri = new Uri("https://api.wassenger.com/v1/messages"), 
Headers =
{
{ "Token", "ENTER API KEY HERE" }, 
}, 
Content = new StringContent("{\"channel\":\"$channel_ID@newsletter\", \"deliverAt\":\"2024-10-23T13:26:35.176Z\", \"poll\":{\"name\":\"Vote for your favorite color\", \"options\":[\"Red\", \"Green\", \"Blue\", \"Yellow\", \"Grey\", \"Black\", \"Orange\", \"Purple\", \"White\"]}}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using(var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}

Teste da API ao vivo

Você pode testar ao vivo e experimentar a API diretamente do seu navegador.

Quando terminar de testar, obtenha o exemplo de código gerado automaticamente na sua linguagem de programação preferida e você estará pronto para começar.

Experimente nosso testador API-Live agora

🤩 🤖 Wassenger é uma plataforma de comunicação completa e solução de API para WhatsApp. Explore mais de 100+ casos de uso da API e automatize qualquer coisa no WhatsApp inscrevendo-se para um teste gratuito e comece em minutos**!**

Perguntas frequentes

Como envio mensagens para vários canais?

Você precisa enviar múltiplas requisições à API, uma por canal de destino.

Por exemplo, se você quiser enviar uma mensagem para 10 canais, deve enviar 10 requisições HTTPS independentes para a API.

Não existe opção para enviar várias mensagens em uma única requisição à API.

Que tipo de mensagens podem ser enviadas?

Você só pode enviar diferentes tipos de mensagens de texto e imagem para canais.

Confira outros tutoriais para mais informações.

Procurando mais respostas? Confira as FAQs estendidas.

Recursos úteis adicionais

Documentação da API

Para mais detalhes sobre o endpoint da API, por favor verifique a documentação onde você encontrará todos os detalhes sobre os parâmetros de requisição aceitos, possíveis respostas de sucesso ou erro e exemplos de código prontos para uso em múltiplas linguagens de programação.

https://app.wassenger.com/docs/#operation/createMessage

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger.

Browse more

Tutorials, guides and case studies on running WhatsApp at team scale.

Ready for the official WhatsApp Business API?See what Meta charges — and keep your current number.
WhatsApp API pricing