23 releases

0.5.3 Mar 13, 2024
0.5.2 Feb 21, 2024
0.4.9 Feb 19, 2024
0.4.3 Jan 29, 2024
0.1.6 May 22, 2022

#771 in Web programming

Download history 5/week @ 2024-06-26 67/week @ 2024-07-03 3/week @ 2024-07-24 9/week @ 2024-07-31 19/week @ 2024-08-07 2/week @ 2024-08-14 15/week @ 2024-09-11 17/week @ 2024-09-18 57/week @ 2024-09-25 7/week @ 2024-10-02 4/week @ 2024-10-09

87 downloads per month

MIT/Apache

28KB
833 lines

whatsapp-cloud-api   Latest Version Docs

Whatsapp Cloud API Rust Client

Features

  • Sending messages using Whatspp Cloud API
  • Get / Upload media
  • Models to help processing incoming webhooks

Usage example

Send template based text message

let access_token = "<access_token>";
let phone_number_id = "<phone_number_id>";
let to = "<to>";
let template_name = "hello_world";
let language = "en_US";
let template = Template::new(template_name, language);
let message = Message::from_template(&to, template, None);
let client = WhatsppClient::new(&access_token, &phone_number_id);
client.send_message(&message).await?;

Send template based text message with parameters

let access_token = "<access_token>";
let phone_number_id = "<phone_number_id>";
let template_name = "sample_shipping_confirmation";
let language = "en_US";
let parameters = Vec::from([Parameter::from_text("3")]);
let components = Vec::from([Component::with_parameters("body", parameters)]);
let template = Template::with_components(template_name, language, components);
let message = Message::from_template(&to, template, None);
let client = WhatasppClient::new(&access_token, &phone_number_id);
let response = client.send_message(&message).await?;

Send text message (Note: This requires an user initial conversation)

let access_token = "<access_token>";
let phone_number_id = "<phone_number_id>";
let to = "<to>";
let text = Text::new("test message");
let message = Message::from_text(&to, text, None);
let client = WhatasppClient::new(&access_token, &phone_number_id);
client.send_message(&message).await?;

For more details, please see the tests folder

Dependencies

~4–19MB
~228K SLoC