NAV Navbar
php

Introduction

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f52c1a00d33cf143524083dd3ffd025d672e255cc688",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan"
    }' \
    -H "Content-Type: application/json" \
    -H "Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA==" \
https://api.woo-wa.com/v2.0/demo

Sample Demo Send Message Script

$key_demo='db63f52c1a00d33cf143524083dd3ffd025d672e255cc688';
$url='https://api.woo-wa.com/v2.0/demo';
$data = array(
    "phone_no"=> '+628975835238',
    "key"     => $key_demo,
    "message" => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);

$data_string = json_encode($data,1);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Content-Length: ' . strlen($data_string),
    'Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA=='
));
echo $res=curl_exec($ch);
curl_close($ch);

Welcome to the Woowa API V3.0! You can use our API to access Woowa API endpoints, which can send message,image also file and get information of your account at my.woo-wa.com.

We have language bindings in PHP! You can view code examples in the dark area to the right, and you can switch the programming language of the examples with the tabs in the top right.

This is Demo account to try our API

license : 5c286f20169dd
key : db63f52c1a00d33cf143524083dd3ffd025d672e255cc688

You can get new data account (token) at https://woo-wa.com

Woowa Eco (web.whatsapp in woowa server)

Send WA

Send Message Sync

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "skip_link": true,
        "flag_retry": "on",
        "pendingTime": 3
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_message

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_message';
$data = array(
  "phone_no"  => '+628975835238',
  "key"       => $key,
  "message"   => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
  "skip_link" => True, // This optional for skip snapshot of link in message
  "flag_retry"  => "on", // This optional for retry on failed send message
  "pendingTime" => 3 // This optional for delay before send message
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

success

This endpoint is used to send text message.

HTTP Request

POST http://116.203.191.58/api/send_message

POST Parameters

Parameter Description
phone_no Client's whatsapp number.
key Key customer.
message text to be sent.
skip_link This optional for skip snapshot of link in message
flag_retry This optional for retry on failed send message
pendingTime This optional for delay before send message

Response

String Description
success Text sent successfully.
phone_offline Number is offline.
[20190909143509] Number not found Number not found.

Send Message Delivery Status Sync

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "deliveryFlag": true,
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_message

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_message';
$data = array(
  "phone_no"  => '+628975835238',
  "key"       => $key,
  "message"   => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
  "deliveryFlag" => True, // This optional for get status in message use api `check_delivery_status`
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
    "message":{
        "messageId":"true_628975835238@c.us_3EB005xxx",
        "sentDate":"2023-09-20 12:59:41",
        "status":"delivery",
        "statusDate":"2023-09-20 12:59:41"
    },
    "status":"success"
}

This endpoint is used to send text message.

HTTP Request

POST http://116.203.191.58/api/send_message

POST Parameters

Parameter Description
phone_no Client's whatsapp number.
key Key customer.
message text to be sent.
deliveryFlag This optional for get status in message use api check_delivery_status

Response

JSON Attributes Description
message[messageId] Message id
message[sentDate] Date message sent
message[status] Delivery status
message[statusDate] Status date.
status Status api response.

Send Message Async

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "skip_link": true,
        "pendingTime": 3
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/async_send_message

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/async_send_message';
$data = array(
  "phone_no"  => '+628975835238',
  "key"       => $key,
  "message"   => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
  "skip_link" => True, // This optional for skip snapshot of link in message
  "pendingTime" => 3 // This optional for delay before send message
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

15683286008530

This endpoint is used to send text message.

HTTP Request

POST http://116.203.191.58/api/async_send_message

POST Parameters

Parameter Description
phone_no Client's whatsapp number.
key Key customer.
message text to be sent.
skip_link This optional for skip snapshot of link in message
pendingTime This optional for delay before send message

Response

String Description
15683286008530 ID queue, get status

Upload Image

Curl

curl -X 'POST' \
  'http://116.203.92.59/api/upload/db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx' \
  -H 'Content-Type: multipart/form-data' \
  -F 'file=@/path/to/file/image_name.png;type=image/png'

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.92.59/api/upload/' . $key;
$file_path = '/path/to/file/image_name.png' );
$cfile = new CURLFile($file_path,'text/plain',$file_path);
$data = array('file' => $cfile);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: multipart/form-data',
));
echo $res=curl_exec($ch);
curl_close($ch);

Response:

success

This endpoint is used to upload image.

HTTP Request

POST http://116.203.191.58/api/upload

POST Parameters

Parameter Description
key Key customer.
file File path with extension.

Response

String Description
15683286008530 ID queue

Send Image Sync

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "filename": "/media/image_name.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_image

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_image';
$data = array(
  "phone_no"  => '+628975835238',
  "key"       => $key,
  "message"   => "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
  "filename"  => "/media/image_name.png"
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

1

This endpoint is used to send image message.

HTTP Request

POST http://116.203.191.58/api/send_image

POST Parameters

Parameter Description
phone_no Client's whatsapp number.
key Key customer.
filename Filename format /media/$filename $filename from upload api without path.
message Caption of image.

Response

String Description
success The message success send.
phone_offline Phone is offline.
Number not found Phone number is not found.
Other error System error.
file_not_exists File not upload yet.

Send Image URL Sync

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_image_url

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_image_url';
$img_url='https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png';
$data = array(
  "phone_no"  => '+628975835238',
  "key"       => $key,
  "url"       => $img_url,
  "message"   => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

15683286008531

This endpoint is used to send image message.

HTTP Request

POST http://116.203.191.58/api/send_image_url

POST Parameters

Parameter Description
phone_no Client's whatsapp number.
key Key customer.
url URL image to be sent.
message Caption of image.

Response

String Description
success Text sent successfully.
phone_offline Number is offline.
Number not found Destination number/username not found in Platform.
Other error System error.
url_wrong Wrong URL.
file_more_than_%sKB File is too big.
image_not_found %sKB Image not found.

Send Image URL Async

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/async_send_image_url

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/async_send_image_url';
$img_url='https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png';
$data = array(
  "phone_no"  => '+628975835238',
  "key"       => $key,
  "url"       => $img_url,
  "message"   => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

15683286008531

This endpoint is used to send image message.

HTTP Request

POST http://116.203.191.58/api/async_send_image_url

POST Parameters

Parameter Description
phone_no Client's whatsapp number.
key Key customer.
url URL image to be sent.
message Caption of image.

Response

String Description
15683286008530 ID Queue.

Send File Sync

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_file_url

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_file_url';
$file_path='https://my.woo-wa.com/wp-content/uploads/2018/12/dokumen.pdf';
$data = array(
  "phone_no"  => '+628975835238',
  "key"       => $key,
  "url"       => $file_path
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

success

This endpoint is used to send image message.

HTTP Request

POST http://116.203.191.58/api/send_file_url

POST Parameters

Parameter Description
phone_no Client's whatsapp number.
key Key customer.
url URL file to be sent.

Response

String Description
success The message success send.
phone_offline Phone is offline.
[20190909143509] Number not found Phone number is not found.

Send File Async

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/async_send_file_url

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/async_send_file_url';
$file_path='https://my.woo-wa.com/wp-content/uploads/2018/12/ducument.pdf';
$data = array(
  "phone_no"  => '+628975835238',
  "key"       => $key,
  "url"       => $file_path
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

15683286008530

This endpoint is used to send image message.

HTTP Request

POST http://116.203.191.58/api/async_send_file_url

POST Parameters

Parameter Description
phone_no Client's whatsapp number.
key Key customer.
url URL file to be sent.

Response

String Description
15683286008530 ID Queue.

Send WA to Group

Send WA to Group Sync

Curl

curl -X POST \
    -d '{
        "group_name": "tes grup",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_group

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_group';
$data = array(
  "group_name"  => 'tes grup',
  "key"         => $key,
  "message"     => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

success

This endpoint is used to send text message to group.

HTTP Request

http://116.203.191.58/api/send_group

POST Parameters

Parameter Description
group_name Group name.
key Key customer.
message Text to be sent.

Response:

String Description
success Text sent succesfully.
group_not_found Group not found.
other_error Error not identified.
phone_offline Phone offline.

Send WA to Group Async

Curl

curl -X POST \
    -d '{
        "group_name": "test grup",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/async_send_group

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/async_send_group';
$data = array(
  "group_name"=> 'tes grup',
  "key"     =>$key,
  "message" =>'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

158107xxxxxx

This endpoint is used to send text message to group.

HTTP Request

http://116.203.191.58/api/async_send_group

POST Parameters

Parameter Description
group_name Group name.
key Key customer.
message Text to be sent.

Response:

String Description
message_id Message ID.

Send WA to Group (Group ID) Sync

Curl

curl -X POST \
    -d '{
        "group_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_message_group_id

Sample Script

$group_id = 'xxxxLFZIhPC3I7ce0W5uk';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_message_group_id';
$data = array(
  "group_id" =>$group_id,
  "key"     =>$key,
  "message" =>'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

success

This endpoint is used to send text message to group.

HTTP Request

http://116.203.191.58/api/send_message_group_id

POST Parameters

Parameter Description
group_id Group ID.
key Key customer.
message Text to be sent.

Response

String Description
success Text sent succesfully.
group_not_found Group not found.
other_error Error not identified.
phone_offline Phone offline.

Send WA to Group (Group ID) Async

Curl

curl -X POST \
    -d '{
        "group_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/async_send_message_group_id

Sample Script

$group_id = 'xxxxLFZIhPC3I7ce0W5uk';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/async_send_message_group_id';
$data = array(
  "group_id" =>$group_id,
  "key"       =>$key,
  "message" =>'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

158107xxxxxx

This endpoint is used to send text message to group.

HTTP Request

http://116.203.191.58/api/async_send_message_group_id

POST Parameters

Parameter Description
group_id Group ID.
key Key customer.
message Text to be sent.

Response

String Description
message_id Message ID.

Send Image to Group Sync

Curl

curl -X POST \
    -d '{
        "group_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_image_url_group_id

Sample Script

$group_id = 'xxxxLFZIhPC3I7ce0W5uk';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_image_url_group_id';
$img_url='https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png';
$data = array(
  "group_id" =>$group_id,
  "key"       =>$key,
  "url"       =>$img_url,
  "message" =>'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

success

This endpoint is used to send image to group.

HTTP Request

http://116.203.191.58/api/send_image_url_group_id

POST Parameters

Parameter Description
group_id Group ID.
key Key customer.
url URL image to be sent.
message Caption of image.

Response

String Description
success Text sent succesfully.
group_not_found Group not found.
other_error Error not identified.
phone_offline Phone offline.

Send Image to Group Async

Curl

curl -X POST \
    -d '{
        "group_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/async_send_image_url_group_id

Sample Script

$group_id = 'xxxxLFZIhPC3I7ce0W5uk';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/async_send_image_url_group_id';
$img_url='https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png';
$data = array(
  "group_id" =>$group_id,
  "key"       =>$key,
  "url"       =>$img_url,
  "message" =>'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

158107xxxxxx

This endpoint is used to send image to group.

HTTP Request

http://116.203.191.58/api/async_send_image_url_group_id

POST Parameters

Parameter Description
group_id Group ID.
key Key customer.
url URL image to be sent.
message Caption of image.

Response

String Description
message_id Message ID

Send File to Group Sync

Curl

curl -X POST \
    -d '{
        "group_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/send_file_url_group_id

Sample Script

$group_id = 'xxxxLFZIhPC3I7ce0W5uk';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/send_file_url_group_id';
$img_url='https://my.woo-wa.com/wp-content/uploads/2018/12/document.pdf';
$data = array(
  "group_id" =>$group_id,
  "key"       =>$key,
  "url"       =>$img_url
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

success

This endpoint is used to send file to group.

HTTP Request

http://116.203.191.58/api/send_file_url_group_id

POST Parameters

Parameter Description
group_id Group ID.
key Key customer.
url URL image to be sent.
message Caption of image.

Response

String Description
success Text sent succesfully.
group_not_found Group not found.
other_error Error not identified.
phone_offline Phone offline.

Send File to Group Async

Curl

curl -X POST \
    -d '{
        "group_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/async_send_file_url_group_id

Sample Script

$group_id = 'xxxxLFZIhPC3I7ce0W5uk';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/async_send_file_url_group_id';
$img_url='https://my.woo-wa.com/wp-content/uploads/2018/12/document.pdf';
$data = array(
  "group_id" =>$group_id,
  "key"       =>$key,
  "url"       =>$img_url
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

158107xxxxxx

This endpoint is used to send file to group.

HTTP Request

http://116.203.191.58/api/async_send_file_url_group_id

POST Parameters

Parameter Description
group_id Group ID.
key Key customer.
url URL image to be sent.
message Caption of image.

Response

String Description
messasge_id Message ID

Schedule

Scheduler

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "sch_date": "2019-12-01 21:00",
        "api_type": "image_text",
        "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
        "url": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/scheduler

Sample Script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/scheduler';
$img_url='https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png';
$data = array(
  "phone_no" =>'phone number',
  "key"       =>$key,
  "sch_date" =>'2019-12-01 21:00',
  "api_type" =>'image_text', // (text, image_text, image, file)
  "message" =>'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
  "url"       =>$img_url
);

$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

158107xxxxxx

This endpoint is used schedule send wa. This API has a limitation that is a maximum of 3 messages / minute that can be set, so that the next message is set at different minutes. The time zone used is UTC + 7 (WIB). So it is conditioned by this time zone

HTTP Request

http://116.203.191.58/api/scheduler

POST Parameters

Parameter Description
phone_no Group ID.
key Key customer.
sch_date Date ex.(2019-12-01 21:00).
api_type API type (text, image_text, image, file).
message Message / Caption of image.
url URL image to be sent.

Response

String Description
msg_id Message ID / Schedule ID
sch_date_below_now Schedule lower than now
sch_date_not_valid Scheduler format is not valid
not_valid_api API Type is not valid
url_empty URL is empty
message_empty Message is empty
file_more_than_$KB File is too big
image_not_found Image not found
sch_more_than_3_in_1_minute Message more than 3 in same minute

Check Scheduler

Curl

curl -X POST \
    -d '{
        "msg_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f52c1a00d33cf143524083dd3ffd025d672e255cc688"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/sch_check

Sample Script

$message_id = '67435xxx';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/sch_check';
$data = array(
  "msg_id" =>$message_id,
  "key"    =>$key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

{
  "status": "success",
  "data": [
    {
      "status": "number_not_found",
      "sys_creation_date": "2020-01-20 21:58:27",
      "target": "6289580xxxxx",
      "sch_date": "2020-01-20 21:59:00",
      "msg_id": "157953230xxxxx",
      "filename": null,
      "status_msg_id": "15795325xxxxx",
      "message": "Test Message,Please don\'t reply.",
      "api_type": "send_message"
    }
  ]
}

This endpoint is used to check scheduler.

HTTP Request

http://116.203.191.58/api/sch_check

POST Parameters

Parameter Description
msg_id Message ID.
key Key customer.

Response

JSON Attributes Description
msg_id Message ID
api_type API type
message Text message
target Target Number
status Status message
filename Filename
sch_date Date (scheduler)
sys_creation_date Date (creation)

Remove Scheduler

Curl

curl -X POST \
    -d '{
        "msg_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f52c1a00d33cf143524083dd3ffd025d672e255cc688"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/sch_remove

Sample Script

$message_id = '67435xxx';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/sch_remove';
$data = array(
  "msg_id" =>$message_id,
  "key"    =>$key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

{
  "status": "success",
  "data": [
    {
      "status": "number_not_found",
      "sys_creation_date": "2020-01-20 21:58:27",
      "target": "6289580xxxxx",
      "sch_date": "2020-01-20 21:59:00",
      "msg_id": "157953230xxxxx",
      "filename": null,
      "status_msg_id": "15795325xxxxx",
      "message": "Test Message,Please don\'t reply.",
      "api_type": "send_message"
    }
  ]
}

This endpoint is used to remove schedule.

HTTP Request

http://116.203.191.58/api/sch_remove

POST Parameters

Parameter Description
msg_id Message ID.
key Key customer.

Response

JSON Attributes Description
msg_id Message ID
api_type API type
message Text message
target Target Number
status Status message
filename Filename
sch_date Date (scheduler)
sys_creation_date Date (creation)

Check Status Async by message_id

Curl

curl -X POST \
    -d '{
        "msg_id": "+628975835238",
        "key": "db63f52c1a00d33cf143524083dd3ffd025d672e255cc688"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/status_msg_id

Sample Script

$message_id = '67435xxx';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/status_msg_id';
$data = array(
  "msg_id" =>$message_id,
  "key"    =>$key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

success

This endpoint is used to get message status.

HTTP Request

http://116.203.191.58/api/status_msg_id

POST Parameters

Parameter Description
msg_id Message ID.
key Key customer.

Response

String Description
success Message success
phone_offline Your Phone is Offline
not_found Message not found

Check Number

Curl

curl -X POST \
    -d '{
        "phone_no": "+628975835238",
        "key": "db63f52c1a00d33cf143524083dd3ffd025d672e255cc688"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/check_number

Sample Script

$phone_no = '67435xxx';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/check_number';
$data = array(
  "phone_no" => $phone_no,
  "key"    => $key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

exists

This endpoint is used to check number status.

HTTP Request

http://116.203.191.58/api/check_number

POST Parameters

Parameter Description
phone_no Whatsapp Number
key Key Pelanggan

Response

String Description
exists Number exists
not_exists Number not exists
unknow Number unknow

Webhook Eco

Webhook Message

Set Webhook Incoming

Curl

curl -X POST \
    -d 'license=&no_wa=+628975835238&action=set&url=https://yourwebsite.com/listen.php' \
https://api.woo-wa.com/v2.0/webhook

Sample Script

$data["license"]= "5c286f20169dd";
$data["url"]    = "https://yourwebsite.com/listen.php"; // message data will push to this url
$data["no_wa"]  = "+628975835238";    //sender number registered in woowa
$data["action"] = "set";

$url="https://api.woo-wa.com/v2.0/webhook";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$err = curl_error($ch);
curl_close ($ch);
if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $result;
}

Response:

{
  "status": "success",
  "message": "http://yourwebsite.com/listen.php",
}

This endpoint is used set webhook.

HTTP Request

POST https://api.woo-wa.com/v2.0/webhook

POST Parameters

Parameter Description
url Incoming message will push to this url.
license Woo-wa license key.
action Webhook action.
no_wa sender number registeres in woowa.

Response

JSON Attribute Description
status Status message.
message Url to listen the message.

Set Webhook Outgoing

Curl

curl -X POST \
    -d 'license=&no_wa=+628975835238&action=set_outgoing&url=https://yourwebsite.com/listen.php' \
https://api.woo-wa.com/v2.0/webhook

Sample Script

$data["license"]= "5c286f20169dd";
$data["url"]    = "https://yourwebsite.com/listen.php"; // message data will push to this url
$data["no_wa"]  = "+628975835238";    //sender number registered in woowa
$data["action"] = "set_outgoing";

$url="https://api.woo-wa.com/v2.0/webhook";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$err = curl_error($ch);
curl_close ($ch);
if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $result;
}

Response:

{
  "status": "success",
  "message": "http://yourwebsite.com/listen.php",
}

This endpoint is used set webhook.

HTTP Request

POST https://api.woo-wa.com/v2.0/webhook

POST Parameters

Parameter Description
url Incoming message will push to this url.
license Woo-wa license key.
action Webhook action.
no_wa sender number registeres in woowa.

Response

JSON Attribute Description
status Status message.
message Url to listen the message.

Get Webhook

Curl

curl -X POST \
    -d 'license=5c286f20169dd&no_wa=+628975835238&action=get&url=https://yourwebsite.com/listen.php' \
https://api.woo-wa.com/v2.0/webhook

Sample Script

$data["license"]= "5c286f20169dd";
$data["url"]    = "https://yourwebsite.com/listen.php"; // message data will push to this url
$data["no_wa"]  = "6289648615564";    //sender number registered in woowa
$data["action"] = "get";

$url="https://api.woo-wa.com/v2.0/webhook";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$err = curl_error($ch);
curl_close ($ch);
if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $result;
}

Response:

{
  "status": "success",
  "message": "http://yourwebsite.com/listen.php",
}

This endpoint is used get webhook.

HTTP Request

POST https://api.woo-wa.com/v2.0/webhook

POST Parameters

Parameter Description
url Incoming message will push to this url.
license Woo-wa license key.
action Webhook action.
no_wa Sender number registeres in woowa.

Response

JSON Attribute Description
status Status message.
message Url to listen the message.

Get All Webhook

Curl

curl -X POST \
    -d 'license=5c286f20169dd&no_wa=+628975835238&action=get_all&url=https://yourwebsite.com/listen.php' \
https://api.woo-wa.com/v2.0/webhook

Sample Script

$data["license"]= "5c286f20169dd";
$data["url"]    = "https://yourwebsite.com/listen.php"; // message data will push to this url
$data["no_wa"]  = "6289648615564";    //sender number registered in woowa
$data["action"] = "get_all";

$url="https://api.woo-wa.com/v2.0/webhook";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$err = curl_error($ch);
curl_close ($ch);
if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $result;
}

Response:

{
    "status": "success",
    "message": "Success",
    "data": {
        "incoming": "https://yourwebsite.com/incoming_url.php",
        "outgoing": "https://yourwebsite.com/outgoing_url.php"
    }
}

This endpoint is used get webhook.

HTTP Request

POST https://api.woo-wa.com/v2.0/webhook

POST Parameters

Parameter Description
url Incoming message will push to this url.
license Woo-wa license key.
action Webhook action.
no_wa Sender number registeres in woowa.

Response

JSON Attribute Description
status Status message.
message Message.
data Json data incoming & outgoing to listen the message.
data[incoming] Url incoming to listen the message.
data[outgoing] Url outgoing to listen the message.

Unset Webhook Incoming

Curl

curl -X POST \
    -d 'license=5c286f20169dd&no_wa=628975835238&action=unset&url=https://yourwebsite.com/listen.php' \
https://api.woo-wa.com/v2.0/webhook

Sample Script

$data["license"]= "5c286f20169dd";
$data["url"]    = "https://yourwebsite.com/listen.php"; // message data will push to this url
$data["no_wa"]  = "628975835238";    //sender number registered in woowa
$data["action"] = "unset";

$url="https://api.woo-wa.com/v2.0/webhook";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$err = curl_error($ch);
curl_close ($ch);
if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $result;
}

Response:

{
  "status": "success",
  "message": "unset success",
}

This endpoint is used to unset webhook.

HTTP Request

POST https://api.woo-wa.com/v2.0/webhook

POST Parameters

Parameter Description
url Incoming message will push to this url.
license Woo-wa license key.
action Webhook action.
no_wa Sender number registeres in woowa.

Response

JSON Attribute Description
status Status message.
message Url to listen the message.

Unset Webhook Outgoing

Curl

curl -X POST \
    -d 'license=5c286f20169dd&no_wa=628975835238&action=unset_outgoing&url=https://yourwebsite.com/listen.php' \
https://api.woo-wa.com/v2.0/webhook

Sample Script

$data["license"]= "5c286f20169dd";
$data["url"]    = "https://yourwebsite.com/listen.php"; // message data will push to this url
$data["no_wa"]  = "628975835238";    //sender number registered in woowa
$data["action"] = "unset_outgoing";

$url="https://api.woo-wa.com/v2.0/webhook";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$err = curl_error($ch);
curl_close ($ch);
if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $result;
}

Response:

{
  "status": "success",
  "message": "unset success",
}

This endpoint is used to unset webhook.

HTTP Request

POST https://api.woo-wa.com/v2.0/webhook

POST Parameters

Parameter Description
url Incoming message will push to this url.
license Woo-wa license key.
action Webhook action.
no_wa Sender number registeres in woowa.

Response

JSON Attribute Description
status Status message.
message Url to listen the message.

Webhook Device Status

Add Webhook Status

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "action": "add",
        "url": "https://your.test/endpoint"
    }' \
    -H "Content-Type: application/json" \
http://116.203.92.59/api/webhook_status

Sample script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.92.59/api/webhook_status';
$data = array(
  "key"         => $key,
  "action"      => "add",
  "url"         => "https://your.test/endpoint"
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
  "status": "string",
  "url": "string",
  "accountNo": "string"
}

This endpoint is used add webhook url endpoint.

HTTP Request

POST http://116.203.92.59/api/webhook_status

POST Parameters

Parameter Description
key For authentication, you cant get from http://woo-wa.com
action Action name
url URL webhook endpoint listener

Response

Parameter Description
status Response status
url URL registered on webhook status
accountNo Account no

Get Webhook Status

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "action": "status"
    }' \
    -H "Content-Type: application/json" \
http://116.203.92.59/api/webhook_status

Sample script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.92.59/api/webhook_status';
$time_choose = 'status'; // interval
$data = array(
  "key"         => $key,
  "action"      => "add",
  "url"         => "https://your.test/endpoint"
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
  "status": "string",
  "url": "string",
  "accountNo": "string"
}

This endpoint is used to get detail account.

HTTP Request

POST http://116.203.92.59/api/webhook_status

POST Parameters

Parameter Description
key For authentication, you cant get from http://woo-wa.com
action Action name
url URL webhook endpoint listener

Response

Parameter Description
status Response status
url URL registered on webhook status
accountNo Account no

Update Webhook Status

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "action": "update",
        "url": "https://your.test/endpoint"
    }' \
    -H "Content-Type: application/json" \
http://116.203.92.59/api/webhook_status

Sample script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.92.59/api/webhook_status';
$time_choose = 'status'; // interval
$data = array(
  "key"         => $key,
  "action"      => "update",
  "url"         => "https://your.test/endpoint"
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
  "status": "string",
  "url": "string",
  "accountNo": "string"
}

This endpoint is used to update webhook url endpoint .

HTTP Request

POST http://116.203.92.59/api/webhook_status

POST Parameters

Parameter Description
key For authentication, you cant get from http://woo-wa.com
action Action name
url URL webhook endpoint listener

Response

Parameter Description
status Response status
url URL registered on webhook status
accountNo Account no

Delete Webhook Status

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "action": "delete",
        "url": "https://your.test/endpoint"
    }' \
    -H "Content-Type: application/json" \
http://116.203.92.59/api/webhook_status

Sample script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.92.59/api/webhook_status';
$time_choose = 'status'; // interval
$data = array(
  "key"         => $key,
  "action"      => "delete",
  "url"         => "https://your.test/endpoint"
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
  "status": "string",
  "url": "string",
  "accountNo": "string"
}

This endpoint is used to delete url webhook.

HTTP Request

POST http://116.203.92.59/api/webhook_status

POST Parameters

Parameter Description
key For authentication, you cant get from http://woo-wa.com
action Action name
url URL webhook endpoint listener

Response

Parameter Description
status Response status
url URL registered on webhook status
accountNo Account no

Capture Data

Sample PHP Script for Listening data:

$json = file_get_contents('php://input');
$data = json_decode($json);

file_put_contents("listen.txt", print_r($data,1));
// file_put_contents('listen2.txt', date("Y-m-d H:i:s :: ").print_r($data,1).PHP_EOL, FILE_APPEND|LOCK_EX);

Format data from webhook:

(
    [contact_name] => +628975835238 
    [ip_server] => 116.203.191.58
    [message] => Lix
    [keyword] => default
    [port] => 3787
)

This endpoint is used to get data webhook.

Scrape Number

Curl

curl -X POST \
    -d '{
        "group_id": "xxxxLFZIhPC3I7ce0W5uk",
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/getGroupMember

Sample Script

$group_id = 'xxxxLFZIhPC3I7ce0W5uk';
$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/getGroupMember';
$data = array(
  "group_id"  => $group_id,
  "key"       => $key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

response

628xxx,xxx,xxx

This endpoint is used to get all number in group whatsapp (suport multidevice only).

HTTP Request

http://116.203.191.58/api/getGroupMember

POST Parameters

Parameter Description
group_id Whatsapp Group ID
key Key Pelanggan

Response

String Description
628xxx,xxx,xxx Number separated by coma
n,o,n,e Group not found or not joined to group_id
failed Failed get member (make sure whatsapp joined multidevice)

Woowa Multics API

Message

Send Message

Curl

curl -X POST \
    -d "number=+628975835238" \
    -d "message=DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/send-text

Sample Script

$device_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_key please change with your own device_key
$url='https://multics.woo-wa.com/api/srv1/send-text';
$data = array(
  "number"  => '+628975835238',
  "message" => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = http_build_query($data,1);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "device-key: $device_key",
    'Content-Type: application/x-www-form-urlencoded'
));
echo $result = curl_exec($ch);
curl_close($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "288b996f-69da-4d57-815e-fdb7342ba012",
        "device_id": "4",
        "message": "DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan",
        "number": "+628975835238",
        "type": "text",
        "updated_at": "2021-06-04 01:35:53"
    }
}

This endpoint is used to send text message.

HTTP Request

POST https://multics.woo-wa.com/api/srv1/send-text

HTTP Headers

Parameter Value
device-key device-key
Content-Type application/x-www-form-urlencoded

POST Parameters

Parameter Description
number Client's whatsapp number.
message text to be sent.

Response

JSON Attributes Description
status status code.
message message status.
data data response.
device_id device id.
number target number.
message message to be sent.
chat_id chat_id
type type message
from_me message from me
from_group message from group
api message from api
created_at message created_at
updated_at message updated_at
id data id

Send Message Image/File URL

Curl

curl -X POST \
    -d "number=+628975835238" \
    -d "message=DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan" \
    -d "media_url=https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png" \
    -d "type=image" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/send-text

Sample Script

$device_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_key please change with your own device_key
$url='https://multics.woo-wa.com/api/srv1/send-media-url';
$data = array(
  "number"  => '+628975835238',
  "message" => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
  "media_url" => "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png",
  "type" => "image", // text, image, document
);
$data_string = http_build_query($data,1);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "device-key: $device_key",
    'Content-Type: application/x-www-form-urlencoded'
));
echo $result = curl_exec($ch);
curl_close($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "f2564e6a-e3d7-4a68-990c-xxxxxxxx",
        "device_id": "189",
        "message": "Testt!",
        "number": "628228054xxxx",
        "type": "image",
        "updated_at": "2021-07-29 13:26:56"
    }
}

This endpoint is used to send text message with image url.

HTTP Request

POST https://multics.woo-wa.com/api/srv1/send-media-url

HTTP Headers

Parameter Value
device-key device-key
Content-Type application/x-www-form-urlencoded

POST Parameters

Parameter Description
number Client's whatsapp number.
message text to be sent.
media_url image/file url to be sent.
type type media to be sent. ex: text/image/document

Response

JSON Attributes Description
status status code.
message message status.
data data response.
id device key.
device_id device id.
message message to be sent.
number target number.
type type message
updated_at message updated_at

Send Message Image/File

Curl

curl -X POST \
    -d "number=+628975835238" \
    -d "message=DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan" \
    -d "media_url=/path/to/file/test.jpg" \
    -d "type=image" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/send-text

Sample Script

$device_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_key please change with your own device_key
$url='https://multics.woo-wa.com/api/srv1/send-media';
$path = "/path/to/file/test.jpg";
$data = array(
    "number"    => "+628975835238",
    "message"   => "DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan",
    "media"     => curl_file_create($path),
    "type"      => "image", // text, image, document
);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "device-key: $device_key"
));
echo $result = curl_exec($ch);
curl_close($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "f2564e6a-e3d7-4a68-990c-xxxxxxxx",
        "device_id": "189",
        "message": "Testt!",
        "number": "628228054xxxx",
        "type": "image",
        "updated_at": "2021-07-29 13:26:56"
    }
}

This endpoint is used to send text message with image file.

HTTP Request

POST https://multics.woo-wa.com/api/srv1/send-media

HTTP Headers

Parameter Value
device-key device-key

POST Parameters

Parameter Description
number Client's whatsapp number.
message text to be sent.
media attach image/file to be sent.
type type media to be sent. ex: text/image/document

Response

JSON Attributes Description
status status code.
message message status.
data data response.
id device key.
device_id device id.
message message to be sent.
number target number.
type type message
updated_at message updated_at

Message Group

Send Message Group Text

Curl

curl -X POST \
    -d "number=+628975835238" \
    -d "message=DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan" \
    -d "group=1" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/send-text

Sample Script

$device_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_key please change with your own device_key
$url='https://multics.woo-wa.com/api/srv1/send-text';
$data = array(
  "number"  => '+628975835238-16219290xx', // use this api group list
  "message" => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
  "group" => 1 // 1 = true, 0 = false
);
$data_string = http_build_query($data,1);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "device-key: $device_key",
    'Content-Type: application/x-www-form-urlencoded'
));
echo $result = curl_exec($ch);
curl_close($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "288b996f-69da-4d57-815e-fdb7342ba012",
        "device_id": "4",
        "message": "DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan",
        "number": "628975835238-16219290xx",
        "type": "text",
        "updated_at": "2021-06-04 01:35:53"
    }
}

This endpoint is used to send text message to group.

HTTP Request

POST https://multics.woo-wa.com/api/srv1/send-text

HTTP Headers

Parameter Value
device-key device-key
Content-Type application/x-www-form-urlencoded

POST Parameters

Parameter Description
number Client's whatsapp number. use this api group list
message text to be sent.
group message send to group.

Response

JSON Attributes Description
status status code.
message message status.
data data response.
device_id device id.
number target number.
message message to be sent.
chat_id chat_id
type type message
from_me message from me
from_group message from group
api message from api
created_at message created_at
updated_at message updated_at
id data id

Send Message Group Image/File URL

Curl

curl -X POST \
    -d "number=+628975835238" \
    -d "message=DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan" \
    -d "image_url=https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png" \
    -d "type=image" \
    -d "group=1" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/send-media-url

Sample Script

$device_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_key please change with your own device_key
$url='https://multics.woo-wa.com/api/srv1/send-media-url';
$data = array(
  "number"  => '+628975835238-16219290xx', // use this api group list
  "message" => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
  "group" => 1, // 1 = true, 0 = false
  "image_url" => "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png",
  "type" => "image" // text, image, document
);
$data_string = http_build_query($data,1);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "device-key: $device_key",
    'Content-Type: application/x-www-form-urlencoded'
));
echo $result = curl_exec($ch);
curl_close($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "66830b9e-e36d-452b-a7a0-xxxxx",
        "device_id": "321",
        "message": "Haloo!",
        "number": "6285157408779-1627568xxx",
        "type": "image",
        "updated_at": "2021-07-29 14:49:58"
    }
}

This endpoint is used to send text message to group with image url.

HTTP Request

POST https://multics.woo-wa.com/api/srv1/send-media-url

HTTP Headers

Parameter Value
device-key device-key
Content-Type application/x-www-form-urlencoded

POST Parameters

Parameter Description
number Client's whatsapp number. use this api group list
message text to be sent.
image_url image url to be send to group.
type type file to be send to group. ex: text/image/document
group type send, if grup set 1, if personal chat set 0, or remove this param

Response

JSON Attributes Description
status status code.
message message status.
data data response.
id device_key.
device_id device id.
message message to be sent.
number target number.
type type message
updated_at message updated_at

Send Message Group Image/File

Curl

curl -X POST \
    -d "number=+628975835238" \
    -d "message=DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan" \
    -d "media=@'/path/to/file/test.jpg'" \
    -d "type=image" \
    -d "group=1" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/send-media

Sample Script

$device_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_key please change with your own device_key
$url='https://multics.woo-wa.com/api/srv1/send-media';
$path = "/path/to/file/test.jpg";
$data = array(
    "number"    => '+628975835238-16219290xx', // use this api group list
    "message"   => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
    "group"     => 1, // 1 = true, 0 = false
    "media"     => curl_file_create($path),
    "type"      => "image" // text, image, document
);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "device-key: $device_key"
));
echo $result = curl_exec($ch);
curl_close($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "66830b9e-e36d-452b-a7a0-xxxxx",
        "device_id": "321",
        "message": "Haloo!",
        "number": "6285157408779-1627568xxx",
        "type": "image",
        "updated_at": "2021-07-29 14:49:58"
    }
}

This endpoint is used to send text message to group with image file.

HTTP Request

POST https://multics.woo-wa.com/api/srv1/send-media

HTTP Headers

Parameter Value
device-key device-key

POST Parameters

Parameter Description
number Client's whatsapp number. use this api group list
message text to be sent.
image attach image file to be send to group.
type type file to be send to group. ex: text/image/document
group type send, if grup set 1, if personal chat set 0, or remove this param

Response

JSON Attributes Description
status status code.
message message status.
data data response.
id device_key.
device_id device id.
message message to be sent.
number target number.
type type message
updated_at message updated_at

Group List

Curl

curl -X GET \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/groups

Sample Script

$device_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_key please change with your own device_key
$url='https://multics.woo-wa.com/api/srv1/groups';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'device-key: '.$device_key
));
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": [
        {
            "id": "d8b84015-6440-4162-a5cc-42d7ea499105",
            "number": "628975835238-16182195xx",
            "name": "Test grup"
        },
        {
            "id": "bb651d09-3961-4472-b858-abcf0ea66d71",
            "number": "628975835238-16219290xx",
            "name": "Test Multics"
        }
    ]
}

This endpoint is used to get group list.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/groups

HTTP Headers

Parameter Value
device-key device-key

Response

JSON Attributes Description
status status code.
message message status.
data data response.
id data id
number group number.
name group name.

Chat History

Curl

curl -X GET \
    -d "start_date='2021-06-03'" \
    -d "end_date='2021-06-04'" \
    -d "search=''" \
    -d "order='asc'" \
    -d "page='1'" \
    -d "per_page='20'" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/history-chat/{license}

Sample Script

$device_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_key please change with your own device_key
$license = "602dc37xxxxx";
$data = [
  'start_date'    => "2021-06-03",
  'end_date'      => "2021-06-04",
  'search'        => '',
  'order'         => 'asc', // asc/desc
  'page'          => 1,
  'per_page'      => 20
];
$data_string = http_build_query($data);

// $data_string is optional
$url="https://multics.woo-wa.com/api/srv1/history-chat/$license?$data_string";

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'device-key: '.$device_key
));
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": [
        {
            "id": "092bb5d6-500b-4db5-a330-c977d8c41e82",
            "msg_id": "3EB0B9B2FCAE",
            "user_id": null,
            "chat_id": "d5dbb1fd-f67c-46a1-8e69-a499095acf03",
            "device_id": "4",
            "number": "6289606526604",
            "name": "Aku",
            "from_group": false,
            "from_me": true,
            "from_story": false,
            "message": "setenga jam test",
            "media_url": null,
            "type": "text",
            "reply_for": null,
            "failed_reason": null,
            "timestamp": "2021-06-01T06:53:36.000Z",
            "status": "DELIVERED",
            "api": true,
            "created_at": "2021-06-01 06:53:36",
            "updated_at": "2021-06-01 06:53:39"
        }
    ],
    "paginate": {
        "total": "1",
        "perPage": 20,
        "page": 1,
        "lastPage": 1
    }
}

This endpoint is used to get history chat.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/history-chat/602dc37xxxxx?start_date=2021-06-01&end_date=2021-06-03&search=&order=asc&page=1&per_page=20

HTTP Headers

Parameter Value
device-key device key

HTTP query

Parameter Description
start_date Start date
end_date End date
search Search some message
order Sort history by asc or desc
page Page number
per_page Limit data in 1 page

Response

JSON Attributes Description
status Status code.
message Message status.
data Data response.
id Data id.
msg_id Message id.
user_id Message user_id
chat_id Chat ID
device_id Device ID
number Target number
name Target name
from_group Message from group
from_me Message from me
from_story Message from story
message Message text
media_url Media_url if send media
type Message type
reply_for Message reply_for
failed_reason Message failed_reason
timestamp Message timestamp
status Message status
- DELIVERED
- PENDING
- SENT
- FAILED
api Message from api
created_at Message created_at
updated_at Message updated_at
paginate Data pagination
total Total message
perPage Total per page
page Current page
lastPage Last page

Bot

Set Bot

Curl

curl -X POST \
    -d "keyword='hey'" \
    -d "type='exact match'" \
    -d "response='hello'" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/bots

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';
$data = array(
    "keyword" => "hey",
    "type" => "exact match", // 'exact match', 'start with', 'contain'
    "response" => "hello"
);

$data_string = http_build_query($data);
$url = 'https://multics.woo-wa.com/api/srv1/bots';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key,
    'Content-Type: application/x-www-form-urlencoded'
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "keyword": "hey",
        "type": "exact match",
        "response": "hello",
        "created_at": "2021-06-09 03:58:32",
        "updated_at": "2021-06-09 03:58:32",
        "id": "6"
    }
}

This endpoint is used to add bot.

HTTP Request

POST https://multics.woo-wa.com/api/srv1/bots

POST Headers

Parameter Description
device-key Device Key
Content-Type application/x-www-form-urlencoded

POST Parameters

Parameter Description
keyword Keywoard message from sender
type Bot type
- exact match, Keyword equals input
- start with, Keyword is similar to the beginning of the input
- contain, Keyword is similar to what is in the input
response Response message sent to sender

Response

Parameter Description
status Status code
message Message status
data Data sent to api
keyword Data keyword sent to api
type Data type sent to api
response Data response sent to api
created_at Data created_at
updated_at Data updated_at
id Data ID
paginate Data pagination
total Total message
perPage Total per page
page Current page
lastPage Last page

Get Bot

Curl

curl -X POST \
    -d "page='1'" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/bots

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';
$data = array(
    "page" => 1
);

$data_string = http_build_query($data);
$url = 'https://multics.woo-wa.com/api/srv1/bots';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key,
    'Content-Type: application/x-www-form-urlencoded'
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": [
        {
            "id": "1",
            "sender": null,
            "keyword": "hey",
            "type": "exact match",
            "response": "hello",
            "created_at": "2021-06-09 03:58:32",
            "updated_at": "2021-06-09 03:58:32",
            "case_sensitive": null,
            "personal_only": null
        }
    ],
    "paginate": {
        "total": "1",
        "perPage": 20,
        "page": 1,
        "lastPage": 1
    }
}

This endpoint is used to get bot.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/bots

HTTP Headers

Parameter Description
device-key Device Key
Content-Type application/x-www-form-urlencoded

HTTP Query

Parameter Description
page Page number

Response

Parameter Description
status Status code
message Message status
data Data sent to api
id Data ID
sender Number sender
keyword Data keyword sent to api
type Data type sent to api
response Data response sent to api
created_at Data created_at
updated_at Data updated_at
case_sensitive Data case_sensitive
personal_only Data personal_only

Update Bot

Curl

curl -X POST \
    -d "keyword='hey'" \
    -d "type='exact match'" \
    -d "response='hello'" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/bots/{id}

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';
$data = array(
    "keyword" => "hey",
    "type" => "exact match", // 'exact match', 'start with', 'contain'
    "response" => "hello"
);
$id = 1; // id bot from api get bot

$data_string = http_build_query($data);
$url = 'https://multics.woo-wa.com/api/srv1/bots/'.$id;

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key,
    'Content-Type: application/x-www-form-urlencoded'
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "1",
        "sender": "628975835238",
        "keyword": "hey",
        "type": "exact match",
        "response": "hello",
        "created_at": "2021-06-10 01:34:40",
        "updated_at": "2021-06-10 01:36:55",
        "case_sensitive": null,
        "personal_only": null,
        "device_id": "4"
    }
}

This endpoint is used to update bot.

HTTP Request

PUT https://multics.woo-wa.com/api/srv1/bots/$id

HTTP Headers

Parameter Description
device-key Device Key
Content-Type application/x-www-form-urlencoded

PUT Parameters

Parameter Description
keyword Keywoard message from sender
type Bot type
- exact match, Keyword equals input
- start with, Keyword is similar to the beginning of the input
- contain, Keyword is similar to what is in the input
response Response message sent to sender

Response

Parameter Description
status Status code
message Message status
data Data sent to api
id Data ID
sender Data Sender
keyword Data keyword sent to api
type Data type sent to api
response Data response sent to api
created_at Data created_at
updated_at Data updated_at
case_sensitive Data case_sensitive
personal_only Data personal_only
device_id Data device_id

Delete Bot

Curl

curl -X DELETE \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/bots/{id}

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';
$id = 1; // id bot from api get bot

$url = 'https://multics.woo-wa.com/api/srv1/bots/'.$id;

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "1",
        "sender": "628975835238",
        "keyword": "hey",
        "type": "exact match",
        "response": "hello",
        "created_at": "2021-06-10 01:34:40",
        "updated_at": "2021-06-10 01:36:55",
        "case_sensitive": null,
        "personal_only": null,
        "device_id": "4"
    }
}

This endpoint is used to delete bot.

HTTP Request

DELETE https://multics.woo-wa.com/api/srv1/bots/$id

HTTP Headers

Parameter Description
device-key Device Key

POST Parameters

Parameter Description
keyword Keywoard message from sender
type Bot type
- exact match, Keyword equals input
- start with, Keyword is similar to the beginning of the input
- contain, Keyword is similar to what is in the input
response Response message sent to sender

Response

Parameter Description
status Status code
message Message status
data Data sent to api
id Data ID
sender Data Sender
keyword Data keyword sent to api
type Data type sent to api
response Data response sent to api
created_at Data created_at
updated_at Data updated_at
case_sensitive Data case_sensitive
personal_only Data personal_only
device_id Data device_id

Web Hook

Add Webhook

Curl

curl -X POST \
    -d "name=example" \
    -d "url=yourwebsite.com/listen.php" \
    -d "qrcode=false" \
    -d "paired=false" \
    -d "unpaired=false" \
    -d "battery=false" \
    -d "message=true" \
    -d "misscall=false" \
    -d "message_status=false" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/device/webhook

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';
$data = array(
    "name"      => "example",
    "url"       => "yourwebsite.com/listen.php",
    "qrcode"    => false,   // true/false
    "paired"    => false,   // true/false
    "unpaired"  => false,   // true/false
    "battery"   => false,   // true/false
    "message"   => true,    // true/false
    "misscall"  => false,    // true/false
    "message_status"  => false    // true/false
);
$data_string = json_encode($data,1);

$url = 'https://multics.woo-wa.com/api/srv1/device/webhook';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key,
    'Content-Type: application/json'
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "name": "example",
        "url": "yourwebsite.com/listen.php",
        "qrcode": false,
        "paired": false,
        "unpaired": false,
        "battery": false,
        "message": true,
        "misscall": false,
        "mesage_status": true,
        "device_id": "4",
        "created_at": "2021-06-10 05:10:38",
        "updated_at": "2021-06-10 05:10:38",
        "id": "4"
    }
}

This endpoint is used to add webhook.

HTTP Request

POST https://multics.woo-wa.com/api/srv1/device/webhook

HTTP Headers

Parameter Description
device-key Device Key
Content-Type application/json

POST Parameters

Parameter Description
name Webhook name
url Webhook url
qrcode Webhook send data on event qrcode value true/false
paired Webhook send data on event paired value true/false
unpaired Webhook send data on event unpaired value true/false
battery Webhook send data on event battery value true/false
message Webhook send data on event message value true/false
misscall Webhook send data on event misscall value true/false
message_status Webhook send data on event update message status value true/false

Response

Parameter Description
status Status code
message Message status
data Data sent to api
name Data name webhook
url Data url webhook
qrcode Data qrcode webhook
paired Data paired webhook
unpaired Data unpaired webhook
battery Data battery webhook
message Data message webhook
misscall Data misscall webhook
mesage_status Data message status webhook
device_id Data device_id webhook
created_at Data created_at webhook
updated_at Data updated_at webhook
id Data id webhook

Get Webhook

Curl

curl -X GET \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/device/webhook

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';
$url = 'https://multics.woo-wa.com/api/srv1/device/webhook';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": [
        {
            "name": "example",
            "url": "yourwebsite.com/listen.php",
            "qrcode": false,
            "paired": false,
            "unpaired": false,
            "battery": false,
            "message": true,
            "misscall": false,
            "message_status": true,
            "device_id": "4",
            "created_at": "2021-06-10 05:10:38",
            "updated_at": "2021-06-10 05:10:38",
            "id": "4"
        }
    ]
}

This endpoint is used to get webhook.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/device/webhook

HTTP Headers

Parameter Description
device-key Device Key

Response

Parameter Description
status Status code
message Message status
data Data sent to api
name Data name webhook
url Data url webhook
qrcode Data qrcode webhook
paired Data paired webhook
unpaired Data unpaired webhook
battery Data battery webhook
message Data message webhook
misscall Data misscall webhook
message_status Data message status webhook
device_id Data device_id webhook
created_at Data created_at webhook
updated_at Data updated_at webhook
id Data id webhook

Update Webhook

Curl

curl -X POST \
    -d "name=example" \
    -d "url=yourwebsite.com/listen.php" \
    -d "qrcode=false" \
    -d "paired=false" \
    -d "unpaired=false" \
    -d "battery=false" \
    -d "message=true" \
    -d "misscall=false" \
    -d "message_status=false" \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/device/webhook/{id}

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';
$id = 1; // id webhook from api get webhook
$data = array(
    "name"      => "example",
    "url"       => "yourwebsite.com/listen.php",
    "qrcode"    => false,   // true/false
    "paired"    => false,   // true/false
    "unpaired"  => false,   // true/false
    "battery"   => false,   // true/false
    "message"   => true,    // true/false
    "misscall"  => false,    // true/false
    "message_status"  => false    // true/false
);
$data_string = json_encode($data,1);

$url = 'https://multics.woo-wa.com/api/srv1/device/webhook/'.$id;

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key,
    'Content-Type: application/json'
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "4",
        "device_id": "4",
        "name": "sipu-sipu",
        "url": "sipu-sipu.com",
        "qrcode": false,
        "paired": false,
        "unpaired": false,
        "battery": true,
        "message": true,
        "misscall": false,
        "message_status": false,
        "created_at": "2021-06-10 05:10:38",
        "updated_at": "2021-06-10 07:56:11"
    }
}

This endpoint is used to add webhook.

HTTP Request

PUT https://multics.woo-wa.com/api/srv1/device/webhook/$id

HTTP Headers

Parameter Description
device-key Device Key
Content-Type application/json

POST Parameters

Parameter Description
name Webhook name
url Webhook url
qrcode Webhook send data on event qrcode value true/false
paired Webhook send data on event paired value true/false
unpaired Webhook send data on event unpaired value true/false
battery Webhook send data on event battery value true/false
message Webhook send data on event message value true/false
misscall Webhook send data on event misscall value true/false
message_status Webhook send data on event update message status value true/false

Response

Parameter Description
status Status code
message Message status
data Data sent to api
id Data id webhook
device_id Data device_id webhook
name Data name webhook
url Data url webhook
qrcode Data qrcode webhook
paired Data paired webhook
unpaired Data unpaired webhook
battery Data battery webhook
message Data message webhook
misscall Data misscall webhook
message_status Data message_status webhook
device_id Data device_id webhook
created_at Data created_at webhook
updated_at Data updated_at webhook

Delete Webhook

Curl

curl -X DELETE \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/device/webhook/{id}

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';

$id = 1; // id webhook from api get webhook
$url = 'https://multics.woo-wa.com/api/srv1/device/webhook/'.$id;

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "name": "example",
        "url": "yourwebsite.com/listen.php",
        "qrcode": false,
        "paired": false,
        "unpaired": false,
        "battery": false,
        "message": true,
        "misscall": false,
        "message_status": false,
        "device_id": "4",
        "created_at": "2021-06-10 05:10:38",
        "updated_at": "2021-06-10 05:10:38",
        "id": "4"
    }
}

This endpoint is used to delete webhook.

HTTP Request

DELETE https://multics.woo-wa.com/api/srv1/device/webhook/$id

HTTP Headers

Parameter Description
device-key Device Key

POST Parameters

Parameter Description
id Webhook id

Response

Parameter Description
status Status code
message Message status
data Data sent to api
name Data name webhook
url Data url webhook
qrcode Data qrcode webhook
paired Data paired webhook
unpaired Data unpaired webhook
battery Data battery webhook
message Data message webhook
misscall Data misscall webhook
message_status Data message status webhook
device_id Data device_id webhook
created_at Data created_at webhook
updated_at Data updated_at webhook
id Data id webhook

Get Data

Sample PHP Script for Listening data:

$json = file_get_contents('php://input');
$data = json_decode($json);

file_put_contents("listen.txt", print_r($data,1));

Format data from webhook, example for message event:

stdClass Object
(
    [event] => message
    [name] => testing local
    [data] => stdClass Object
        (
            [msg_id] => CAE248A0084738E3454DFDF35DF63245
            [status] => SENT
            [message] => hello people
            [sender_number] => 628515740xxxx
            [receiver_number] => 628228054xxxx
        )

)

This endpoint is used to get data webhook.

Generate QR

Curl

curl -X GET \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/generate-qr

Sample script

$device_key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';

$url = 'https://multics.woo-wa.com/api/srv1/generate-qr';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$device_key
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "qr": "data:image/png;base64, ....
    }
}

This endpoint is used to generate QR Code.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/generate-qr

HTTP Headers

Parameter Description
device-key Device Key

Response

Parameter Description
status Status code
message Message status
data Data body
qr Qr code image encoded with base64

Device Info

Curl

curl -X GET \
    -H "license: xxxxLFZIhPC3I7ce0W5uk" \
https://multics.woo-wa.com/api/srv1/device-info

Sample script

$license = '601bca1gth80';

$url = 'https://multics.woo-wa.com/api/srv1/device-info';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'license: '.$license
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "key": "1a2fe02f-6f95-4e1d-9f4d-f8bb193xxxx",
        "name": "woowa",
        "phone": "628515740xxxx"
    }
}

This endpoint is used to get device info.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/device-info

HTTP Headers

Parameter Description
license License Key

Response

Parameter Description
status Status code
message Message status
data Data body
key Device Key
name Device Label
phone Device Number

Device Status

Curl

curl -X GET \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/device-status

Sample script

$key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';

$url = 'https://multics.woo-wa.com/api/srv1/device-status';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$key
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "status": "PAIRED"
    }
}

This endpoint is used to get device status.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/device-status

HTTP Headers

Parameter Description
device-key Device Key

Response

Parameter Description
status Status code
message Message status
data Data body
status Status Device in Server

Device Logout

Curl

curl -X GET \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/device-logout

Sample script

$key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';

$url = 'https://multics.woo-wa.com/api/srv1/device-logout';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$key
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "216",
        "key": "1a2fe02f-6f95-4e1d-9f4d-f8bb193xxxx",
        "name": "woowa name",
        "phone": "628515740xxxx",
        "status": "PAIRED",
        "qr_code": "data:image/png;base64,i.....",
        "wa_name": "Ibnu Mardini",
        "wa_version": "2.21.21.17",
        "manufacture": "Xiaomi",
        "os_version": "11",
        "battery": null,
        "license": "602dc3754xxxx",
        "created_at": "2021-10-06 06:28:21",
        "auto_send": false,
        "partner_id": "1",
        "merge_inbox": null,
        "notification": true
    }
}

This endpoint is used to logout from multics server.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/device-logout

HTTP Headers

Parameter Description
device-key Device Key

Response

Parameter Description
status Status code
message Message status
data Device Data

Use Here

Curl

curl -X GET \
    -H "device-key: db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx" \
https://multics.woo-wa.com/api/srv1/relogin

Sample script

$key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx';

$url = 'https://multics.woo-wa.com/api/srv1/relogin';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'device-key: '.$key
));

echo $res = curl_exec($ch);

Response:

{
    "status": 200,
    "message": "Success!",
    "data": {
        "id": "216",
        "key": "1a2fe02f-6f95-4e1d-9f4d-f8bb193xxxx",
        "name": "woowa name",
        "phone": "628515740xxxx",
        "status": "PAIRED",
        "qr_code": "data:image/png;base64,i.....",
        "wa_name": "Ibnu Mardini",
        "wa_version": "2.21.21.17",
        "manufacture": "Xiaomi",
        "os_version": "11",
        "battery": null,
        "license": "602dc3754xxxx",
        "created_at": "2021-10-06 06:28:21",
        "auto_send": false,
        "partner_id": "1",
        "merge_inbox": null,
        "notification": true
    }
}

This endpoint is used to relogin in multics server, when you login in another web.whatsapp.

HTTP Request

GET https://multics.woo-wa.com/api/srv1/relogin

HTTP Headers

Parameter Description
device-key Device Key

Response

Parameter Description
status Status code
message Message status
data Device Data

Woowa Eco Partner

Device Info

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/info

Sample script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/info';
$data = array(
  "key"       => $key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
  "status": "string",
  "number": "string",
  "account": "string",
  "version": "string"
}

This endpoint is used to get device info.

HTTP Request

POST http://116.203.191.58/api/info

POST Parameters

Parameter Description
key Key customer

Response

Parameter Description
status Device Status
number Whatsapp Number.
account DeviceId.
version Version.

Logout

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/logout

Sample script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/logout';
$data = array(
  "key"       => $key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

success

This endpoint is used to logout device.

HTTP Request

POST http://116.203.191.58/api/logout

POST Parameters

Parameter Description
key Key customer

Response

Parameter Description
success Device logout successful
not_valid_ip System IP is not registered.
failed WhatsApp number not registered.
port_down The system is not ready or not active.
base64 Qrcode base64.

Generate QR

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/generate_qr

Sample script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/generate_qr';
$data = array(
  "key"       => $key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

data:image/png;base64, ....

This endpoint is used to generate qr code image. If successful, you will get the file name to retrieve the file. To get an image file do curl with the parameter file name.

HTTP Request

POST http://116.203.191.58/api/generate_qr

POST Parameters

Parameter Description
key Key customer

Response

Parameter Description
success Device alredy scaned logout first to scan
not_valid_ip System IP is not registered.
failed WhatsApp number not registered.
port_down The system is not ready or not active.
base64 Qrcode base64.

QR Status

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
    }' \
    -H "Content-Type: application/json" \
http://116.203.191.58/api/qr_status

Sample script

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/qr_status';
$data = array(
  "key"       => $key
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

success

This endpoint is used check if the WhatsApp status on HP is connected with Woowa server.

HTTP Request

POST http://116.203.191.58/api/qr_status

POST Parameters

Parameter Description
key Key customer

Response

Parameter Description
not_valid_ip System IP is not registered.
failed WhatsApp number not registered.
offline Offline
refresh_it Number is used by other session
none Number is not scan yet
online Online

Check License

Curl

curl -X GET \
    -H "Content-Type: application/json" \
https://api.woo-wa.com/v3.0/license/expired/5c286f201xxxx

Sample script


$license = '5c286f201xxxx';
$url='https://api.woo-wa.com/v3.0/license/expired/'.$license

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

success

This endpoint is used check if license expired or not.

HTTP Request

GET https://api.woo-wa.com/v3.0/license/expired/5c286f201xxxx

GET Parameters

Parameter Description
License 5c286f201xxxx

Response

Parameter Description
success true or false
message Description Status
expired_date Date format YYYY-MM-dd
status failed/active/expired

Check Delivery Status

Curl

curl -X POST \
    -d '{
        "key": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "messageId": "true_628xxx@c.us_3EB0051xxx"
    }'
    -H "Content-Type: application/json" \
http://116.203.191.58/api/check_delivery_status

Sample script

Get license from http://woo-wa.com

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.191.58/api/check_delivery_status';
$data = array(
  "key"         => $key,
  "messageId"   => "true_628xxx@c.us_3EB0051xxx"
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
    "status": "success", 
    "message": {
        "status": "delivery", 
        "sentDate": "2023-09-20 12:59:41", 
        "statusDate": "2023-09-20 12:59:41", 
        "content": "Hello World3"
    }
}

This endpoint is used to check delivery status.

HTTP Request

POST http://116.203.191.58/api/check_delivery_status

POST Parameters

Parameter Description
key For authentication, you cant get from http://woo-wa.com
messageId Message ID from api Send Message Delivery Status Sync

Response

Parameter Description
status success/failed
message[status] Message delivery status
message[sentDate] Sent Date
message[statusDate] Status Date
message[content] Message Content

Get Report JSON

Curl

curl -X POST \
    -d '{
        "key": "db63f52c1a00d33cf143524083dd3ffd025d672e255cc688",
        "time_choose": "today"
    }'
    -H "Content-Type: application/json" \
http://116.203.92.59/api/report_json

Sample script

Get license from http://woo-wa.com

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.92.59/api/report_json';
$time_choose = 'today'; // interval
$data = array(
  "key"         => $key,
  "time_choose" => $time_choose,
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
  "status": "string",
  "message": "string",
  "data": [
    {
      "isi_pesan": "string",
      "message_id": "string",
      "message_type": "string",
      "penerima": "string",
      "status": "string",
      "tanggal": "string"
    }
  ]
}

This endpoint is used to get report.

HTTP Request

POST http://116.203.92.59/api/report_json

POST Parameters

Parameter Description
key For authentication, you cant get from http://woo-wa.com
time_choose Time Interval : today, yesterday, 7days, month, month_back

Response

Parameter Description
status success/failed
message wrong_time_choose,no_data,not_exists
data -isi_pesan (message text)
-message_id
-message_type
-penerima (received)
-status (message status)
-tanggal (date)

Get Report JSON keyword

Curl

curl -X POST \
    -d '{
        "key": "db63f52c1a00d33cf143524083dd3ffd025d672e255cc688",
        "time_choose": "today",
        "keyword": "hello"
    }'
    -H "Content-Type: application/json" \
http://116.203.92.59/api/report_json

Sample script

Get license from http://woo-wa.com

$key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
$url='http://116.203.92.59/api/report_json';
$time_choose = 'today'; // interval
$data = array(
  "key"         => $key,
  "time_choose" => $time_choose,
  "keyword"     => "hello"
);
$data_string = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Content-Type: application/json',
  'Content-Length: ' . strlen($data_string))
);
echo $res=curl_exec($ch);
curl_close($ch);

Response:

{
  "status": "string",
  "message": "string",
  "data": [
    {
      "isi_pesan": "string",
      "message_id": "string",
      "message_type": "string",
      "penerima": "string",
      "status": "string",
      "tanggal": "string"
    }
  ]
}

This endpoint is used to get report.

HTTP Request

POST http://116.203.92.59/api/report_json

POST Parameters

Parameter Description
key For authentication, you cant get from http://woo-wa.com
time_choose Time Interval : today, yesterday, 7days, month, month_back
keyword String : the text to be searched for in the message

Response

Parameter Description
status success/failed
message wrong_time_choose,no_data,not_exists
data -isi_pesan (message text)
-message_id
-message_type
-penerima (received)
-status (message status)
-tanggal (date)

Get Status Bulk ID

Curl

curl -X POST \
    --form 'license="xxxxLFZIhPC3I7ce0W5uk"' \
    --form 'bulk_msg_id="1599844649xxxx,1599876923xxxx"' \
    -H "Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA==" \
https://api.go.woo-wa.com/v4.0/wa_partner/bulk_check_id

Sample script

Get license from http://woo-wa.com

$url = 'https://api.go.woo-wa.com/v4.0/wa_partner/bulk_check_id';

$license = '5c286f201xxxx';
$bulk_msg_id = '1599844649xxxx,1599876923xxxx';

$data = array(
    "license" => $license,
    "bulk_msg_id" => $bulk_msg_id,
);

$data_string = http_build_query($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA=='
));

echo $res = curl_exec($ch);

This endpoint is used to get status bulk message.

HTTP Request

POST https://api.go.woo-wa.com/v4.0/wa_partner/bulk_check_id

POST Parameters

Parameter Description
license For authentication, you cant get from http://woo-wa.com
bulk_msg_id Message ID, if you want to get more, you can use comma (,)

Response

Parameter Description
status Message Status ( success, number_not_found etc. )
msg_id Message ID

Get Key

Curl

curl -X POST \
    -d "license='xxxxLFZIhPC3I7ce0W5uk'" \
    -d "email='ex@example.com'" \
    -H "Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA==" \
https://api.go.woo-wa.com/v4.0/wa_partner/get_key

Sample script

Get license from http://woo-wa.com

$url = 'https://api.go.woo-wa.com/v4.0/wa_partner/get_key';

$license = '5c286f201xxxx';
$email = 'ex@example.com';

$data = array(
    "license" => $license,
    "email" => $email,
);

$data_string = http_build_query($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA=='
));

echo $res = curl_exec($ch);

This endpoint is used to get key.

HTTP Request

POST https://api.go.woo-wa.com/v4.0/wa_partner/get_key

POST Parameters

Parameter Description
license For authentication & get your number in our database, you cant get your key from http://woo-wa.com
email For authentication, you cant get from http://woo-wa.com

Response

Parameter Description
status Status ( success, failed etc. )
message Message Status ( Successfully to Get Key, +6208888_not_your_client etc. )
key Your Key

Add Bot

Curl

curl -X POST \
    -d "license='xxxxLFZIhPC3I7ce0W5uk'" \
    -d "bot_keyword='hey'" \
    -d "bot_response='hello'" \
    -d "bot_type='match'" \
    -H "Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA==" \
https://api.go.woo-wa.com/v4.0/wa_partner/add_bot

Sample script

Get license from http://woo-wa.com

$url = 'https://api.go.woo-wa.com/v4.0/wa_partner/add_bot';

$license = '5c286f201xxxx';

$data = array(
    "license" => $license,
    "bot_keyword" => "hey",
    "bot_response" => "hello",
    "bot_type" => "match",
);

$data_string = http_build_query($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA=='
));

echo $res = curl_exec($ch);

Response:

{
    "message": "Add bot successfully.",
    "status": "success"
}

This endpoint is used to add bot.

HTTP Request

POST https://api.go.woo-wa.com/v4.0/wa_partner/add_bot

POST Parameters

Parameter Description
license For authentication & get your number in our database, you cant get your key from http://woo-wa.com
bot_keyword Keywoard message from sender
bot_response Response message sent to sender
bot_type Bot type
- match, Keyword equals input
- partial, Keyword is similar to the beginning of the input
- partial_all, Keyword is similar to what is in the input

Response

Parameter Description
status Status ( success, failed etc. )
message Message Status ( Add bot succesfully etc. )

Get Bot

Curl

curl -X POST \
    -d "license='xxxxLFZIhPC3I7ce0W5uk'" \
    -H "Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA==" \
https://api.go.woo-wa.com/v4.0/wa_partner/get_bot

Sample script

Get license from http://woo-wa.com

$url = 'https://api.go.woo-wa.com/v4.0/wa_partner/get_bot';

$license = '5c286f201xxxx';

$data = array(
    "license" => $license
);

$data_string = http_build_query($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA=='
));

echo $res = curl_exec($ch);

Response:

{
    "data": {
        "0": {
            "action_type": "",
            "keyword": "hey",
            "match_type": "match",
            "text": "hellooo",
            "text_type": "text"
        }
    },
    "message": "Get bot success",
    "status": "success"
}

This endpoint is used to get bot.

HTTP Request

POST https://api.go.woo-wa.com/v4.0/wa_partner/get_bot

POST Parameters

Parameter Description
license For authentication & get your number in our database, you cant get your key from http://woo-wa.com

Response

Parameter Description
status Status ( success, failed etc. )
message Message Status ( Get bot succesfully etc. )
data[id] id is bot id, use to delete bot
data[id]action_type Bot action_type
data[id]keyword Bot keyword
data[id]match_type Bot type
data[id]text Bot response
data[id]text_type Bot text_type

Delete Bot

Curl

curl -X POST \
    -d "license='xxxxLFZIhPC3I7ce0W5uk'" \
    -d "id='0'" \
    -H "Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA==" \
https://api.go.woo-wa.com/v4.0/wa_partner/delete_bot

Sample script

Get license from http://woo-wa.com

$url = 'https://api.go.woo-wa.com/v4.0/wa_partner/delete_bot';

$license = '5c286f201xxxx';

$data = array(
    "license" => $license,
    "id"      => 0, // id data from api get_bot
);

$data_string = http_build_query($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 360);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Authorization: Basic dXNtYW5ydWJpYW50b3JvcW9kcnFvZHJiZWV3b293YToyNjM3NmVkeXV3OWUwcmkzNDl1ZA=='
));

echo $res = curl_exec($ch);

Response:

{
    "message": "Delete bot successfully.",
    "status": "success"
}

This endpoint is used to delete bot.

HTTP Request

POST https://api.go.woo-wa.com/v4.0/wa_partner/delete_bot

POST Parameters

Parameter Description
license For authentication & get your number in our database, you cant get your key from http://woo-wa.com
id Id bot you can get from api get_bot

Response

Parameter Description
status Status ( success, failed etc. )
message Message Status ( Delete bot successfully. etc. )

Woowa CRM API

Send Message

Curl

curl -X POST \
    -d '{
        "deviceId": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "number": "+628975835238",
        "message": "DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan"
    }' \
    -H "Content-Type: application/json" \
https://crm.woo-wa.com/send/message-text

Sample Script

Get device id from woowa crm extension menu in here

$device_id='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_id please change with your own device_id
$url='https://crm.woo-wa.com/send/message-text';
$data = array(
  "deviceId"    => $device_id,
  "number"      => '+628975835238',
  "message"     => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan'
);
$data_string = json_encode($data,1);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json'
));
echo $result = curl_exec($ch);
curl_close($ch);

Response:

{
   "status":true,
   "message":"success send message text!",
   "data":{
      "number":"+628975835238",
      "message":"testing",
      "deviceId":"xar1d3ichald8ac2mxxxx"
   }
}

This endpoint is used to send text message.

HTTP Request

POST https://crm.woo-wa.com/send/message-text

HTTP Headers

Parameter Value
Content-Type application/json

POST Parameters

Parameter Description
deviceId deviceId crm get from extension crm.
number Client's whatsapp number.
message text to be sent.

Response

JSON Attributes Description
status status code.
message message status.
data data response.
number target number.
message message to be sent.
deviceId device id.

Send Message Image/File URL

Curl

curl -X POST \
    -d '{
        "deviceId": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx",
        "number": "+628975835238",
        "message": "DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan",
        "imageUrl": "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
    }' \
    -H "Content-Type: application/json" \
https://crm.woo-wa.com/send/message-text

Sample Script

Get device id from woowa crm extension menu in here

$device_id='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo device_id please change with your own device_id
$url='https://crm.woo-wa.com/send/message-image';
$data = array(
    "deviceId"  => $device_id,
    "number"    => '+628975835238',
    "message"   => 'DEMO AKUN WOOWA. tes woowa api v3.0 mohon di abaikan',
    "imageUrl"  => "https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
);
$data_string = json_encode($data,1);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json'
));
echo $result = curl_exec($ch);
curl_close($ch);

Response:

{
   "status":true,
   "message":"success send message text!",
   "data":{
      "number":"+628975835238",
      "message":"testing",
      "deviceId":"xar1d3ichald8ac2mxxxx",
      "imageUrl":"https://app.woo-wa.com/wp-content/uploads/2018/12/Logo-Woo-WA-PNG-Berwarna-150px.png"
   }
}

This endpoint is used to send text message with image url.

HTTP Request

POST https://crm.woo-wa.com/send/message-image

HTTP Headers

Parameter Value
Content-Type application/json

POST Parameters

Parameter Description
deviceId deviceId
number Client's whatsapp number.
message text to be sent.
imageUrl image/file url to be sent.

Response

JSON Attributes Description
status status code.
message message status.
data data response.
number target number.
message message to be sent.
deviceId device id.

Woowandroid (Whatsapp in Smartphone)

Send Message

Curl

curl -X POST \
    -d '{
        "app_id": "429d3472-da0f-4b2b-a63e-4644050caf8f",
        "include_player_ids": [
            "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
        ],
        "data": {
            "type": "Reminder",
            "message": "Bismillah Demo woowandroid",
            "no_wa": "+628975835238"
        },
        "contents": {
            "en": "Woowa Title"
        },
        "headings": {
            "en": "Woowa Notice"
        }
    }' \
    -H "Content-Type: application/json; charset=utf-8" \
    -H "Authorization: Basic NjY0NzE3MTYtMzc3ZC00YmY5LWJhNzQtOGRiMWM1ZTNhNzBh" \
https://onesignal.com/api/v1/notifications

Sample Script

Get player id from Woowandroid App CS ID menu in here

$param = array(
    'app_id' => '429d3472-da0f-4b2b-a63e-4644050caf8f', //app id don't change
    'include_player_ids' => ['20fe93ea-6bf4-428c-87e5-f7aa6xxxxx'], //you can take Player id from Woowandroid App CS ID menu.
    'data' => array(
        "type"      => 'Reminder', //opsional Reminder/After Checkout/Pending Payment/dll editable
        "message"   => 'Bismillah Demo woowandroid',
        "no_wa"     => '628975835238'
    ),
    'contents'  => array(
        "en"    => 'Woowa Title'
    ),
    "headings"  =>  array(
        "en"    => 'Woowa Notice'
    )
);
$data_json = json_encode($param);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://onesignal.com/api/v1/notifications');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json; charset=utf-8',
    'Authorization: Basic NjY0NzE3MTYtMzc3ZC00YmY5LWJhNzQtOGRiMWM1ZTNhNzBh')); //os_auth don't change
$response = curl_exec($ch);
curl_close($ch);
echo $response;

Response:

{
  "id": "1b789027-41ce-4256-a3e9-d2115e5d100a",
  "recipients": "1",
  "external_id": "null",
}

This endpoint is used to send message.

HTTP Request

POST https://onesignal.com/api/v1/notifications

Header Parameters

Parameter Description
Authorization Basic NjY0NzE3MTYtMzc3ZC00YmY5LWJhNzQtOGRiMWM1ZTNhNzBh
Content-type application/json

Body Parameters

Parameter Description
app_id Aplication ID.
include_player_ids CS ID or Device ID
data[type] message type. Optional
data[message] text message
data[no_wa] destination WA number
contents[en] Notification Content
headings[en] Notification Title

Response

JSON Attribute Description
id 1b789027-41ce-4256-a3e9-d2115e5d100a
recipients 1
external_id null

Sync CS ID

Curl

curl -X GET \
https://api.woo-wa.com/v2.0/woowandroid/get-cs-id-all/{license}

Sample Script

$license = '5ca5a4e48dxxx';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.woo-wa.com/v2.0/woowandroid/get-cs-id-all/'.$license);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$response = curl_exec($ch);
curl_close($ch);
echo $response;

Response:

{
  "status": "found",
  "message": "data found",
  "data": 
    [ 
     { 
      "id":74,
      "cs_nama":"089634518xxx",
      "player_id":"8d3a7e7f-88d2-4fc3-91ed-1bb4aa4a6733",
      "device_id":"75b8f60fbdf79049",
      "created_at":"2019-07-30"
     } 
    ] 
}

This endpoint is used to send message.

HTTP Request

POST https://api.woo-wa.com/v2.0/woowandroid/get-cs-id-all/{license}

Parameters

Parameter Description
license License from woo-wa.com

Integromat Send

Sample Input Data to Add In Integromat

Get player id from Woowandroid App CS ID menu in here


 URL : https://onesignal.com/api/v1/notifications
 Method : POST
 Headers : none (empty)
 Query String : none (empty)
 Body Type : Raw
 Content Type : JSON (application/json)
 Request Content : {"app_id":"429d3472-da0f-4b2b-a63e-4644050caf8f","_player_ids":["20fe93ea-6bf4-428c-87e5-f7aa6xxxxx"],"data":{"type":"Reminder","message":"Bismillah Demo woowandroid","no_wa":"628975835238"},"contents":{"en":"Woowa Title"},"headings":{"en":"Woowa Notice"}}

Response:

{
  "id": "1b789027-41ce-4256-a3e9-d2115e5d100a",
  "recipients": "1",
  "external_id": "null",
}

This endpoint is used to send message.

HTTP Request

POST https://onesignal.com/api/v1/notifications

Header Parameters

Parameter Description
Authorization Basic NjY0NzE3MTYtMzc3ZC00YmY5LWJhNzQtOGRiMWM1ZTNhNzBh
Content-type application/json

Body Parameters

Parameter Description
app_id Aplication ID.
include_player_ids CS ID or Device ID
data[type] message type. Optional
data[message] text message
data[no_wa] destination WA number
contents[en] Notification Content
headings[en] Notification Title

Response

JSON Attribute Description
id 1b789027-41ce-4256-a3e9-d2115e5d100a
recipients 1
external_id null

Woowandroid v2 (Whatsapp in Smartphone)

Send Message

Curl

curl -X POST \
    -d '"to": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
        "data": {
            "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
            "schedule": "2020-05-13 11:21:15",
            "number": "+628975835238",
            "whatsapp": "personal"
        }
    }' \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4" \
https://fcm.googleapis.com/fcm/send

Sample Script

Get player id from Woowandroid App CS ID menu in here

$param = array(
    "to" => "eJFkzLWnSaWLuxbbsrBfaK:APA91bF1-eVk-kzg1g1Lsxxxxx",
    "data" => array(
        "message"   => "Bismillah Demo & # * woowandroid",
        "schedule"  => "2020-05-13 11:21:15", // opsional
        "number"    => "085704701230",
        "whatsapp"  => "personal" // bisnis, auto
    )
);
$data_json=json_encode($param, 1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://fcm.googleapis.com/fcm/send');
curl_setopt( $ch,CURLOPT_POST, true );
curl_setopt( $ch,CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch,CURLOPT_POSTFIELDS, $data_json);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Authorization: Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4')); //woowandroid
$response = curl_exec($ch);
curl_close($ch);
echo $response;

Response:

{
  "multicast_id":7864996124893606395,
  "success":1,
  "failure":0,
  "canonical_ids":0,
  "results":[
    {
      "message_id":"0:1598587396350190%d2b0a9c8f9fd7ecd"
    }
  ]
}

This endpoint is used to send message.

HTTP Request

POST https://fcm.googleapis.com/fcm/send

Header Parameters

Parameter Description
Authorization Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4
Content-type application/json

Body Parameters

Parameter Description
to CS ID or Device ID
data[message] text message
data[schedule] schedule send message (optional)
data[number] destination WA number
data[whatsapp] whatsapp type

Response

JSON Attribute Description
multicast_id 7864996124893606395
success 1
failure 0
canonical_ids 0
results[0][message_id] 0:1598587396350190%d2b0a9c8f9fd7ecd

Send Image

Curl

curl -X POST \
    -d '"to": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
        "data": {
            "message": "DEMO AKUN WOOWA CURL. tes woowa api v3.0 mohon di abaikan",
            "number": "+628975835238",
            "img_url": "https://cdn.idntimes.com/content-images/community/2019/04/palm-phone-review-20-840x472-db1fdef88146e78ce783e925c839e2c3_600x400.jpg",
            "send_form": "Woowa X2R"
        }
    }' \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4" \
https://fcm.googleapis.com/fcm/send

Sample Script

Get player id from Woowandroid App CS ID menu in here

$param = array(
    'data' => array(
        "message" => 'JFaidah Fikih dari grup Multaqo Indonesia & $ \' ///"(MDI) !@#$%^&*())_+|;',
        "number" => '628139307xxxx',
        "img_url" => "https://cdn.idntimes.com/content-images/community/2019/04/palm-phone-review-20-840x472-db1fdef88146e78ce783e925c839e2c3_600x400.jpg",
        "send_from" => "Woowa X2R",
        // "schedule" => '2021-02-24 23:20:00'
    ),
    'to' => "dCr82l7KRNurTPL_mSvj3P:APA91bElx4jqgJuQta2YBNzeQ3rgVJ3_-NJfAPGATWHec1-6NFlAQPB4Ur1LbO-VRLe41p87uIQ6utyqvqE6wO1v_5q1N8ObjwJwDWJ2hGC3DYd9j9JcHhQfzxxxx", // change with your cs id
);
$data_json = json_encode($param);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://fcm.googleapis.com/fcm/send');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Authorization: Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4')); //os_auth don't change
$response = curl_exec($ch);
curl_close($ch);
echo $response;

Response:

{
    "multicast_id": 6953388008310302546,
    "success": 1,
    "failure": 0,
    "canonical_ids": 0,
    "results": [{
        "message_id": "0:1616385264214406%7947997ef9fd7ecd"
    }]
}

This endpoint is used to send image.

HTTP Request

POST https://fcm.googleapis.com/fcm/send

Header Parameters

Parameter Description
Authorization Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4
Content-type application/json

Body Parameters

Parameter Description
to CS ID or Device ID
data[message] text message, for image captions
data[schedule] schedule send message (optional)
data[img_url] full url path your image
data[send_from] for info, where the message was sent from
data[number] destination WA number

Response

JSON Attribute Description
multicast_id 7864996124893606395
success 1
failure 0
canonical_ids 0
results[0][message_id] 0:1598587396350190%d2b0a9c8f9fd7ecd

Send File

Curl

curl -X POST \
    -d '"to": "db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx"
        "data": {
            "number": "+628975835238",
            "file_url": "https://ngl.cengage.com/assets/downloads/grex_pro0000000538/grex1_su3.pdf",
            "send_form": "Woowa X2R"
        }
    }' \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4" \
https://fcm.googleapis.com/fcm/send

Sample Script

Get player id from Woowandroid App CS ID menu in here

$param = array(
    'data' => array(
        "number" => '628139307xxxx',
        "file_url" => "https://ngl.cengage.com/assets/downloads/grex_pro0000000538/grex1_su3.pdf",
        "send_from" => "Woowa X2R",
        // "schedule" => '2021-02-24 23:20:00'
    ),
    'to' => "dCr82l7KRNurTPL_mSvj3P:APA91bElx4jqgJuQta2YBNzeQ3rgVJ3_-NJfAPGATWHec1-6NFlAQPB4Ur1LbO-xxxxx",
);
$data_json = json_encode($param);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://fcm.googleapis.com/fcm/send');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Authorization: Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4')); //os_auth don't change
$response = curl_exec($ch);
curl_close($ch);
echo $response;

Response:

{
    "multicast_id": 6953388008310302546,
    "success": 1,
    "failure": 0,
    "canonical_ids": 0,
    "results": [{
        "message_id": "0:1616385264214406%7947997ef9fd7ecd"
    }]
}

This endpoint is used to send file.

HTTP Request

POST https://fcm.googleapis.com/fcm/send

Header Parameters

Parameter Description
Authorization Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4
Content-type application/json

Body Parameters

Parameter Description
to CS ID or Device ID
data[schedule] schedule send message (optional)
data[file_url] full url path to your file
data[send_from] for info, where the message was sent from
data[number] destination WA number

Response

JSON Attribute Description
multicast_id 7864996124893606395
success 1
failure 0
canonical_ids 0
results[0][message_id] 0:1598587396350190%d2b0a9c8f9fd7ecd

Google Form

Google Form Integrate Woowa Eco

Copy this script to google script editor

Get key from http://woo-wa.com here

function sendMessageWoowaeco() {
    //editable
    var kolom_no_wa=3; //kolom ke
    var woowa_eco_key='db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key
    var template="halo pesan anda : [kolom2] dan no anda : [kolom3]"; // use \n , if you want to enter on your message

    // do not edit
    algo(kolom_no_wa,woowa_eco_key,template);
  }

  // do not edit
  function algo(kolom_no_wa,woowa_eco_key,template){
    var _0x48d7=['post','fetch','log','getActiveSheet','getRange','getLastRow','getLastColumn','getValues','length','split','[kolom','join','http://116.203.191.58/api/async_send_message','application/json'];(function(_0xc35321,_0x538ee9){var _0x4bf9f3=function(_0x3f3f6e){while(--_0x3f3f6e){_0xc35321['push'](_0xc35321['shift']());}};_0x4bf9f3(++_0x538ee9);}(_0x48d7,0x1a7));var _0xb32f=function(_0xc35321,_0x538ee9){_0xc35321=_0xc35321-0x0;var _0x4bf9f3=_0x48d7[_0xc35321];return _0x4bf9f3;};var ss=SpreadsheetApp[_0xb32f('0x0')]();var rows=ss[_0xb32f('0x1')](0x2,0x2,ss[_0xb32f('0x2')](),ss[_0xb32f('0x3')]())[_0xb32f('0x4')]();var i=rows[_0xb32f('0x5')]-0x2;for(var k=0x0;k<=ss[_0xb32f('0x3')]();k++){var template=template[_0xb32f('0x6')](_0xb32f('0x7')+(k+0x2)+']')[_0xb32f('0x8')](rows[i][k]);}var url=_0xb32f('0x9');var data={'phone_no':rows[i][kolom_no_wa-0x2],'key':woowa_eco_key,'message':template};var payload=JSON['stringify'](data);var length=payload[_0xb32f('0x5')]['toString']();var headers={'Content-Type':_0xb32f('0xa')};var options={'method':_0xb32f('0xb'),'payload':payload,'headers':headers,'contentLength':length,'muteHttpExceptions':!![]};Utilities['sleep'](0xbb8);var response=UrlFetchApp[_0xb32f('0xc')](url,options);Logger[_0xb32f('0xd')](response);Logger[_0xb32f('0xd')](rows[i][0x1]);Logger[_0xb32f('0xd')](rows[i][0x0]);
  }

This endpoint is used to send message.

Script parameter

Parameter Description
kolom_no_wa column number or Whatsapp number from left (in spreadsheet)
woowa_eco_key key from woo-wa.com e.g f3c14e82574ff675a523c27159fa7696207a3b0e6ea28xxx
template template of massage e.g Hi [kolom2] your whatsapp number is [kolom3]

shortcode parameter in template

Parameter Description
[kolom1] its always timestamp
[kolom2] opsional. up to order in google form
[kolom3] opsional. up to order in google form
[kolom4] opsional. up to order in google form
[kolom5] opsional. up to order in google form
[kolomxx] opsional. up to order in google form. xx mean etc for next column

Response

[20-01-12 19:38:51:267 PST] 15788867297075
[20-01-12 19:38:51:268 PST] +628228054xxxx
[20-01-12 19:38:51:268 PST] test

Google Form Integrate Woowandroid

Copy this script to google script editor

Get include_player_ids from Woowandroid App CS ID menu in here

function sendMessageWoowandroid() {

    var kolom_no_wa=3; //kolom ke
    var include_player_ids="8f07d3d8-e730-48eb-a811-8cc4ba53d47c";
    var template="halo pesan anda : [kolom2] dan no anda : [kolom3]"; // use \n , if you want to enter on your message

    // do not edit
    algo(kolom_no_wa,include_player_ids,template)
}

// do not edit
function algo(kolom_no_wa,include_player_ids,template){
    var _0x4dfd=['Reminder','Woowa\x20Notice','stringify','application/json','post','fetch','getActiveSheet','getRange','getLastColumn','getValues','length','split','[kolom','join','https://onesignal.com/api/v1/notifications','429d3472-da0f-4b2b-a63e-4644050caf8f'];(function(_0x5523ec,_0x1c1138){var _0x44abf2=function(_0x4e59a6){while(--_0x4e59a6){_0x5523ec['push'](_0x5523ec['shift']());}};_0x44abf2(++_0x1c1138);}(_0x4dfd,0x136));var _0x338b=function(_0x5523ec,_0x1c1138){_0x5523ec=_0x5523ec-0x0;var _0x44abf2=_0x4dfd[_0x5523ec];return _0x44abf2;};var ss=SpreadsheetApp[_0x338b('0x0')]();var rows=ss[_0x338b('0x1')](0x2,0x2,ss['getLastRow'](),ss[_0x338b('0x2')]())[_0x338b('0x3')]();var i=rows[_0x338b('0x4')]-0x2;for(var k=0x0;k<=ss[_0x338b('0x2')]();k++){var template=template[_0x338b('0x5')](_0x338b('0x6')+(k+0x2)+']')[_0x338b('0x7')](rows[i][k]);}var url=_0x338b('0x8');var data={'app_id':_0x338b('0x9'),'include_player_ids':[include_player_ids],'data':{'type':_0x338b('0xa'),'message':template,'no_wa':rows[i][kolom_no_wa-0x2]},'contents':{'en':'Woowa\x20Title'},'headings':{'en':_0x338b('0xb')}};var payload=JSON[_0x338b('0xc')](data);var headers={'Content-Type':_0x338b('0xd'),'Authorization':'Basic\x20NjY0NzE3MTYtMzc3ZC00YmY5LWJhNzQtOGRiMWM1ZTNhNzBh'};var options={'method':_0x338b('0xe'),'payload':payload,'headers':headers,'muteHttpExceptions':!![]};Utilities['sleep'](0xbb8);var response=UrlFetchApp[_0x338b('0xf')](url,options);Logger['log'](response);
}

This endpoint is used to send message.

Script parameter

Parameter Description
kolom_no_wa column number or Whatsapp number from left (in spreadsheet)
include_player_ids key from woo-wa.com e.g 8f07d3d8-e730-48eb-a811-8cc4ba53dxxx
template template of massage e.g Hi [kolom2] your whatsapp number is [kolom3]

shortcode parameter in template

Parameter Description
[kolom1] its always timestamp
[kolom2] opsional. up to order in google form
[kolom3] opsional. up to order in google form
[kolom4] opsional. up to order in google form
[kolom5] opsional. up to order in google form
[kolomxx] opsional. up to order in google form. xx mean etc for next column

Response

[20-01-13 10:37:23:417 ICT] {"id":"5406ee3b-f4de-4c00-8376-35de65c82164","recipients":1,"external_id":null}

Google Form Integrate Woowandroid V2

Copy this script to google script editor

Get include_player_ids from Woowandroid App CS ID menu in here

function sendMessageWoowa(e) {
    //editable
    var kolom_no_wa = 2; //kolom ke
    var key = 'db63f5inihanyakeydummycf083dd3ffd025d672e255xxxxx'; //this is demo key please change with your own key/cs_id/device_id
    var template = "halo pesan anda : [kolom3] dan no anda : [kolom2]"; // use \n , if you want to enter on your message
    var type = 'woowandroidv2' // value (woowaeco/woowandroidv1/woowandroidv2/woowacrm)

    // do not edit
    algo(kolom_no_wa, key, template, type, e);
}

// do not edit
function algo(kolom_no_wa, key, template, type, e) {
    var _0x48d7 = ['post', 'fetch', 'log', 'getActiveSheet', 'getRange', 'getLastRow', 'getLastColumn', 'getValues', 'length', 'split', '[kolom', 'join', 'http://116.203.191.58/api/async_send_message', 'application/json']; (function(_0xc35321, _0x538ee9) { var _0x4bf9f3 = function(_0x3f3f6e) { while (--_0x3f3f6e) { _0xc35321['push'](_0xc35321['shift']()); } }; _0x4bf9f3(++_0x538ee9); }(_0x48d7, 0x1a7)); var _0xb32f = function(_0xc35321, _0x538ee9) { _0xc35321 = _0xc35321 - 0x0; var _0x4bf9f3 = _0x48d7[_0xc35321]; return _0x4bf9f3; }; var ss = SpreadsheetApp[_0xb32f('0x0')](); var rows = ss[_0xb32f('0x1')](0x2, 0x2, ss[_0xb32f('0x2')](), ss[_0xb32f('0x3')]())[_0xb32f('0x4')](); try { var range = e.range; var i = range.getRow() - 0x2; } catch(err) { Logger.log('Invalid range please use event type (On edit/On form submit);'); Logger.log(err); return; } for (var k = 0x0; k <= ss[_0xb32f('0x3')](); k++) { var template = template[_0xb32f('0x6')](_0xb32f('0x7') + (k + 0x2) + ']')[_0xb32f('0x8')](rows[i][k]); } var no_wa = rows[i][kolom_no_wa - 0x2].toString(); if (typeof no_wa === "string") { if (no_wa.length>0) { var no_wa = no_wa.split(/[^0-9]/).join(""); no_wa = no_wa.replace(/^[0]/, "62"); no_wa = "+" + no_wa; no_wa = no_wa.length > 5 ? no_wa : ''; } } switch (type) { case "woowaeco": var param = { "phone_no": no_wa, "message": template, "key": key, }; var url = "http://116.203.92.59/api/async_send_message" , payload = JSON.stringify(param) , headers = { "contentType": "application/json" } , options = { 'method': 'post', 'payload': payload, 'headers': headers, 'contentType': 'application/json', 'muteHttpExceptions': true }; var response = UrlFetchApp[_0xb32f('0xc')](url, options); var result = response.getContentText(); Logger.log(options); Logger.log(result); break; case "woowacrm": var url = 'https://crm.woo-wa.com/send/message-text'; var data = { "deviceId": key, "number": no_wa, "message": template }; var headers = { 'Content-Type': 'application/x-www-form-urlencoded', 'Cache-Control': 'no-cache' }; var options = { 'method': 'post', 'payload': data, 'headers': headers, 'muteHttpExceptions': !![] }; var response = UrlFetchApp[_0xb32f('0xc')](url, options); var result = response.getContentText(); Logger.log(result); break; case "woowandroidv1": var param = { 'type': 'Reminder', 'message': template, 'no_wa': no_wa }; var url = 'https://onesignal.com/api/v1/notifications'; var data = { 'app_id': '429d3472-da0f-4b2b-a63e-4644050caf8f', 'include_player_ids': [key], 'data': param, 'contents': { 'en': 'Woowa Title' }, 'headings': { 'en': 'Woowa Title' } }; var payload = JSON.stringify(data); var headers = { 'Content-Type': 'application/json', 'Authorization': 'Basic NjY0NzE3MTYtMzc3ZC00YmY5LWJhNzQtOGRiMWM1ZTNhNzBh' }; var options = { 'method': 'post', 'payload': payload, 'headers': headers, 'muteHttpExceptions': !![] }; var response = UrlFetchApp[_0xb32f('0xc')](url, options); var result = response.getContentText(); Logger.log(options); Logger.log(result); break; case "woowandroidv2": var url = 'https://fcm.googleapis.com/fcm/send'; var data = { "to": key, "data": { "number": no_wa, "message": template } }; var payload = JSON.stringify(data); var headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4' }; var options = { 'method': 'post', 'payload': payload, 'headers': headers, 'muteHttpExceptions': !![] }; var response = UrlFetchApp[_0xb32f('0xc')](url, options); var result = response.getContentText(); Logger.log(options); Logger.log(result); break; default: Logger.log('Error: type value is ' + type); break; } Utilities['sleep'](0xbb8); Logger[_0xb32f('0xd')](response); Logger[_0xb32f('0xd')](rows[i][0x1]); Logger[_0xb32f('0xd')](rows[i][0x0]);
}

This endpoint is used to send message. use trigger event On edit/On form submit

Script parameter

Parameter Description
kolom_no_wa column number or Whatsapp number from left (in spreadsheet)
key use (woowakey/cs_id/device_id)
template template of massage e.g Hi [kolom2] your whatsapp number is [kolom3]
type type integrate (woowaeco/woowandroidv1/woowandroidv2/woowacrm)

shortcode parameter in template

Parameter Description
[kolom1] its always timestamp
[kolom2] opsional. up to order in google form
[kolom3] opsional. up to order in google form
[kolom4] opsional. up to order in google form
[kolom5] opsional. up to order in google form
[kolomxx] opsional. up to order in google form. xx mean etc for next column

Response

[20-01-13 10:37:23:417 ICT] {"id":"5406ee3b-f4de-4c00-8376-35de65c82164","recipients":1,"external_id":null}

Google Form Integrate Woowa Addon

Copy this script to google form add-on script editor.

/*! Woowa Addon v2.6.2 | (c) Woowa | mhgufron | https://app.woo-wa.com/terms-conditions | https://app.woo-wa.com/privacy-policy */ 
var _0x5cae11=_0x3928;(function(_0x5dc85a,_0x53ed78){var _0x361f9b=_0x3928,_0x2dc479=_0x5dc85a();while(!![]){try{var _0x2a5f0f=-parseInt(_0x361f9b(0x109))/0x1*(parseInt(_0x361f9b(0x178))/0x2)+-parseInt(_0x361f9b(0x101))/0x3*(-parseInt(_0x361f9b(0x154))/0x4)+-parseInt(_0x361f9b(0x141))/0x5+parseInt(_0x361f9b(0x124))/0x6*(-parseInt(_0x361f9b(0x151))/0x7)+parseInt(_0x361f9b(0x16a))/0x8+-parseInt(_0x361f9b(0x108))/0x9+-parseInt(_0x361f9b(0x117))/0xa*(-parseInt(_0x361f9b(0x14c))/0xb);if(_0x2a5f0f===_0x53ed78)break;else _0x2dc479['push'](_0x2dc479['shift']());}catch(_0x2192b6){_0x2dc479['push'](_0x2dc479['shift']());}}}(_0x309d,0xb80db));var _0x4ff1bc=(function(){var _0x139f2d=!![];return function(_0x7e50e0,_0x49d85e){var _0x4b9b72=_0x139f2d?function(){var _0x26443a=_0x3928;if(_0x49d85e){var _0xb989d1=_0x49d85e[_0x26443a(0x15e)](_0x7e50e0,arguments);return _0x49d85e=null,_0xb989d1;}}:function(){};return _0x139f2d=![],_0x4b9b72;};}()),_0x25b6ea=_0x4ff1bc(this,function(){var _0x51d709=_0x3928;return _0x25b6ea[_0x51d709(0x179)]()[_0x51d709(0x16d)]('(((.+)+)+)+$')['toString']()[_0x51d709(0x136)](_0x25b6ea)['search'](_0x51d709(0x162));});_0x25b6ea();function _0x3928(_0x32660c,_0x5b951e){var _0x299e0d=_0x309d();return _0x3928=function(_0x19217f,_0x21f1fd){_0x19217f=_0x19217f-0xf2;var _0x38b2eb=_0x299e0d[_0x19217f];return _0x38b2eb;},_0x3928(_0x32660c,_0x5b951e);}var _0x21f1fd=(function(){var _0x23d4b5=!![];return function(_0xcd602,_0x14d884){var _0x4111f0=_0x23d4b5?function(){var _0x37393f=_0x3928;if(_0x14d884){var _0x448bf9=_0x14d884[_0x37393f(0x15e)](_0xcd602,arguments);return _0x14d884=null,_0x448bf9;}}:function(){};return _0x23d4b5=![],_0x4111f0;};}()),_0x19217f=_0x21f1fd(this,function(){var _0xee197e=_0x3928,_0x1c1d69=typeof window!==_0xee197e(0x165)?window:typeof process===_0xee197e(0x11f)&&typeof require===_0xee197e(0x12b)&&typeof global==='object'?global:this,_0xe8699d=_0x1c1d69[_0xee197e(0x15d)]=_0x1c1d69[_0xee197e(0x15d)]||{},_0x425215=['log',_0xee197e(0x114),_0xee197e(0xfe),_0xee197e(0x11e),_0xee197e(0x132),'table','trace'];for(var _0x1081f6=0x0;_0x1081f6<_0x425215['length'];_0x1081f6++){var _0x445814=_0x21f1fd[_0xee197e(0x136)]['prototype'][_0xee197e(0x138)](_0x21f1fd),_0x36711c=_0x425215[_0x1081f6],_0x5be15f=_0xe8699d[_0x36711c]||_0x445814;_0x445814[_0xee197e(0x10d)]=_0x21f1fd[_0xee197e(0x138)](_0x21f1fd),_0x445814[_0xee197e(0x179)]=_0x5be15f[_0xee197e(0x179)]['bind'](_0x5be15f),_0xe8699d[_0x36711c]=_0x445814;}});_0x19217f();var ADDON_TITLE=_0x5cae11(0x160),ADDON_VERSION='v2.6.2';function onOpen(_0x47174a){var _0x176e74=_0x5cae11;FormApp['getUi']()[_0x176e74(0x10b)]()[_0x176e74(0x15b)]('Woowa\x20Settings',_0x176e74(0x166))[_0x176e74(0x15b)]('About','showAbout')[_0x176e74(0x12c)]();}function setTrigger(){var _0x141118=_0x5cae11;const _0x1a100e=getSettings(),_0x5c5c66=_0x1a100e[_0x141118(0x13f)];out={'emailSetTriggers':_0x5c5c66};if(typeof _0x5c5c66===_0x141118(0x165)||_0x5c5c66!==''&&_0x5c5c66===Session[_0x141118(0x17a)]()[_0x141118(0x10e)]()){adjustFormSubmitTrigger(),email=Session[_0x141118(0x17a)]()[_0x141118(0x10e)](),out={'emailSetTriggers':email};try{PropertiesService['getDocumentProperties']()['setProperties'](out);}catch(_0x16f785){console[_0x141118(0x104)]('Failed\x20with\x20error\x20%s',_0x16f785[_0x141118(0x167)]);}Logger['log'](_0x141118(0x105));}else unsetTrigger(),Logger[_0x141118(0x104)](_0x141118(0x140));return out;}function unsetTrigger(){var _0x38f667=_0x5cae11;const _0xd2bcb6=getSettings(),_0x2fd2e1=_0xd2bcb6[_0x38f667(0x13f)];if(typeof _0x2fd2e1===_0x38f667(0x165)||_0x2fd2e1!==''&&_0x2fd2e1===Session['getActiveUser']()['getEmail']()){const _0x3012ff=PropertiesService[_0x38f667(0x145)]();_0x3012ff[_0x38f667(0x135)](_0x38f667(0x13f));}deleteSubmitTrigger();}function _0x309d(){var _0xd067e8=['warn','LIST','createTemplate','180vSsFOK','join','country_code','create','</span>\x20</div>\x20<link\x20rel=\x22stylesheet\x22\x20href=\x22https://ssl.gstatic.com/docs/script/css/add-ons1.css\x22>\x20<script\x20src=\x22https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js\x22></script>\x20<style>\x20#content\x20{\x20margin-bottom:\x204em;\x20}\x20#footer\x20{\x20background-color:\x20#fff;\x20position:\x20fixed;\x20border-top:\x201px\x20solid\x20#ddd;\x20}\x20.form-group\x20input,\x20.form-group\x20textarea,\x20.form-group\x20select\x20{\x20width:\x20100%;\x20padding:\x208px;\x20margin:\x203px\x200\x208px;\x20}\x20.success\x20{\x20color:\x20rgb(5,\x20185,\x2011);\x20}\x20.tab\x20{\x20overflow:\x20hidden;\x20border:\x201px\x20solid\x20#ccc;\x20background-color:\x20#f1f1f1;\x20}\x20.tab\x20button\x20{\x20background-color:\x20inherit;\x20float:\x20left;\x20border:\x20none;\x20outline:\x20none;\x20cursor:\x20pointer;\x20padding:\x2014px\x2016px;\x20transition:\x200.3s;\x20}\x20.tab\x20button:hover\x20{\x20background-color:\x20#ddd;\x20}\x20.tab\x20button.active\x20{\x20background:\x20#ccc;\x20box-shadow:\x20none;\x20}\x20.tabcontent\x20{\x20display:\x20none;\x20padding:\x206px\x2012px;\x20border-top:\x20none;\x20}\x20.tabcontent\x20{\x20animation:\x20fadeEffect\x201s;\x20}\x20.tablinks\x20{\x20height:\x2038px\x20!important;\x20padding:\x204px\x20!important;\x20margin:\x200\x20!important;\x20border-radius:\x200\x20!important;\x20border:\x200\x20!important;\x20}\x20@keyframes\x20fadeEffect\x20{\x20from\x20{opacity:\x200;}\x20to\x20{opacity:\x201;}\x20}\x20.adminNotifyForm,\x20.clientNotifyForm,\x20.defaultCountrycode\x20{\x20margin-bottom:\x208px;\x20}\x20#adminOptions,\x20#clientOptions,\x20#defaultCountrycodeContent\x20{\x20display:\x20none;\x20}\x20.btn-shortcode\x20{\x20padding:\x200.4em\x20!important;\x20height:\x2021px;\x20display:\x20inline-block;\x20line-height:\x20.2em;\x20min-width:\x202em;\x20margin:\x200\x200.3em\x200.3em\x200\x20!important;\x20background:\x20#e4e4e4;\x20border-radius:\x203px;\x20cursor:\x20pointer;\x20}\x20.btn-shortcode:hover\x20{\x20background:\x20#ccc;\x20}\x20</style>\x20<script>\x20$(function\x20()\x20{\x20$(\x27#Settings\x27).click();\x20$(\x27#save,\x20#adminSave,\x20#clientSave\x27).on(\x27click\x27,\x20saveSettingToServer);\x20$(\x27input,\x20select,\x20textarea\x27).on(\x27click\x27,\x20removeStatus);\x20getData();\x20changeLabel();\x20});\x20$(\x22#integrasi\x22).on(\x22change\x22,\x20function()\x20{\x20changeLabel();\x20});\x20$(\x27#country_code\x27).on(\x27change\x27,\x20function()\x20{\x20var\x20val_country\x20=\x20$(this).val().split(/[^0-9]/).join(\x22\x22);\x20val_country\x20=\x20val_country\x20?\x20val_country\x20:\x2062;\x20$(\x27.default_country\x27).text(val_country);\x20});\x20$(\x27#adminNotify\x27).click(toggleadminNotify);\x20$(\x27#clientNotify\x27).click(toggleclientNotify);\x20$(\x27#defaultCountrycode\x27).click(toggledefaultCountrycode);\x20function\x20openTab(evt,\x20idTab)\x20{\x20var\x20i,\x20tabcontent,\x20tablinks;\x20tabcontent\x20=\x20document.getElementsByClassName(\x22tabcontent\x22);\x20for\x20(i\x20=\x200;\x20i\x20<\x20tabcontent.length;\x20i++)\x20{\x20tabcontent[i].style.display\x20=\x20\x22none\x22;\x20}\x20tablinks\x20=\x20document.getElementsByClassName(\x22tablinks\x22);\x20for\x20(i\x20=\x200;\x20i\x20<\x20tablinks.length;\x20i++)\x20{\x20tablinks[i].className\x20=\x20tablinks[i].className.replace(\x22\x20active\x22,\x20\x22\x22);\x20}\x20document.getElementById(idTab).style.display\x20=\x20\x22block\x22;\x20evt.currentTarget.className\x20+=\x20\x22\x20active\x22;\x20}\x20function\x20getData()\x20{\x20google.script.run.withSuccessHandler(loadSettings)\x20.withFailureHandler(showStatus)\x20.withUserObject($(\x27#button-bar\x27).get())\x20.getSettings();\x20}\x20function\x20loadSettings(settings)\x20{\x20$(\x27#integrasi\x27).val(settings.integrasi);\x20$(\x27#key\x27).val(settings.key);\x20$(\x27#country_code\x27).val(settings.country_code);\x20$(\x27.default_country\x27).text(settings.country_code);\x20$(\x27#\x27\x20+\x20settings.country_type\x20+\x20\x27_country[name=\x22country_type\x22]\x27).click();\x20$(\x27#template\x27).text(settings.template);\x20$(\x27#noWaAdmin\x27).val(settings.noWaAdmin);\x20$(\x27#templateAdmin\x27).text(settings.templateAdmin);\x20if\x20(settings.adminNotify\x20===\x20\x27true\x27)\x20{\x20$(\x27#adminNotify\x27).prop(\x27checked\x27,\x20true);\x20$(\x27#adminOptions\x27).show();\x20}\x20if\x20(settings.clientNotify\x20===\x20\x27true\x27)\x20{\x20$(\x27#clientNotify\x27).prop(\x27checked\x27,\x20true);\x20$(\x27#clientOptions\x27).show();\x20}\x20if\x20(settings.defaultCountrycode\x20===\x20\x27true\x27)\x20{\x20$(\x27#defaultCountrycode\x27).prop(\x27checked\x27,\x20true);\x20$(\x27#defaultCountrycodeContent\x27).show();\x20}\x20/**\x20settings.allItems[settings.allItems.length]\x20=\x20{\x22title\x22:\x20\x22Date\x22};\x20settings.allItems[settings.allItems.length]\x20=\x20{\x22title\x22:\x20\x22Timestamp\x22};\x20**/\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20settings.allItems.length;\x20i++)\x20{\x20var\x20option\x20=\x20$(\x27<option>\x27).attr(\x27value\x27,\x20settings.allItems[i][\x27id\x27])\x20.text(settings.allItems[i][\x27title\x27]);\x20var\x20shortcode\x20=\x20$(\x27<button>\x27).addClass(\x27btn-shortcode\x27).text(\x27[\x27+settings.allItems[i][\x27title\x27]+\x27]\x27);\x20$(\x27#no_wa\x27).append(option);\x20$(\x27.shortcodeTemplate\x27).append(shortcode);\x20}\x20$(\x27.btn-shortcode\x27).on(\x27click\x27,\x20function()\x20{\x20String.prototype.splice\x20=\x20function(idx,\x20rem,\x20str)\x20{\x20return\x20this.slice(0,\x20idx)\x20+\x20str\x20+\x20this.slice(idx\x20+\x20Math.abs(rem));\x20};\x20String.prototype.replaceBetween\x20=\x20function(idx,\x20rem,\x20str)\x20{\x20return\x20this.substring(0,\x20idx)\x20+\x20str\x20+\x20this.substring(rem);\x20};\x20let\x20textarea\x20=\x20$(this).parent().siblings(\x27textarea\x27);\x20if\x20(\x20textarea\x20)\x20{\x20let\x20start\x20=\x20textarea.prop(\x22selectionStart\x22);\x20let\x20end\x20=\x20textarea.prop(\x22selectionEnd\x22);\x20let\x20str\x20=\x20textarea.val();\x20let\x20shortcode\x20=\x20$(this).text();\x20let\x20text\x20=\x20str.replaceBetween(start,\x20end,\x20\x22\x22);\x20text\x20=\x20text.splice(start,\x200,\x20shortcode);\x20textarea.val(\x20text\x20);\x20let\x20txtarea\x20=\x20document.getElementById(textarea.attr(\x27id\x27));\x20txtarea.focus();\x20txtarea.selectionEnd=\x20start\x20+\x20shortcode.length;\x20}\x20});\x20$(\x27#no_wa\x27).val(settings.no_wa);\x20changeLabel();\x20}\x20function\x20saveSettingToServer()\x20{\x20this.disabled\x20=\x20true;\x20$(\x27.status\x27).remove();\x20var\x20integrasi=\x20$(\x27#integrasi\x27).val(),\x20key=\x20$(\x27#key\x27).val(),\x20country_code=\x20$(\x27#country_code\x27).val(),\x20country_type=\x20$(\x27[name=\x22country_type\x22]:checked\x27).val(),\x20no_wa=\x20$(\x27#no_wa\x27).val(),\x20template=\x20$(\x27#template\x27).val(),\x20adminNotify\x20=$(\x27#adminNotify\x27).is(\x27:checked\x27)?\x20\x27true\x27:\x20\x27false\x27,\x20clientNotify\x20=$(\x27#clientNotify\x27).is(\x27:checked\x27)?\x20\x27true\x27:\x20\x27false\x27,\x20defaultCountrycode\x20=$(\x27#defaultCountrycode\x27).is(\x27:checked\x27)?\x20\x27true\x27:\x20\x27false\x27,\x20noWaAdmin=\x20$(\x27#noWaAdmin\x27).val(),\x20templateAdmin=\x20$(\x27#templateAdmin\x27).val(),\x20settings\x20=\x20{\x20\x27integrasi\x27:\x20integrasi,\x20\x27key\x27:\x20key,\x20\x27country_code\x27:\x20country_code,\x20\x27country_type\x27:\x20country_type,\x20\x27no_wa\x27:\x20no_wa,\x20\x27template\x27:\x20template,\x20\x27adminNotify\x27:\x20adminNotify,\x20\x27clientNotify\x27:\x20clientNotify,\x20\x27defaultCountrycode\x27:\x20defaultCountrycode,\x20\x27noWaAdmin\x27:\x20noWaAdmin,\x20\x27templateAdmin\x27:\x20templateAdmin\x20};\x20if\x20(key==\x27\x27\x20||\x20integrasi==\x27\x27)\x20{\x20showStatus(\x27Please\x20input\x20valid\x20data\x27,\x20$(\x27#button-bar\x27));\x20return;\x20}\x20google.script.run\x20.withSuccessHandler(\x20function(msg,\x20element)\x20{\x20showStatus(\x27Saved\x20settings\x27,\x20$(\x27#button-bar\x27),\x20\x27success\x27);\x20showStatus(\x27Saved\x20settings\x27,\x20$(\x27#admin-button-bar\x27),\x20\x27success\x27);\x20showStatus(\x27Saved\x20settings\x27,\x20$(\x27#client-button-bar\x27),\x20\x27success\x27);\x20element.disabled\x20=\x20false;\x20})\x20.withFailureHandler(\x20function(msg,\x20element)\x20{\x20showStatus(msg,\x20$(\x27#button-bar\x27),\x20\x27error\x27);\x20showStatus(msg,\x20$(\x27#admin-button-bar\x27),\x20\x27error\x27);\x20showStatus(msg,\x20$(\x27#client-button-bar\x27),\x20\x27error\x27);\x20element.disabled\x20=\x20false;\x20})\x20.withUserObject(this)\x20.saveSettings(settings);\x20}\x20function\x20showStatus(msg,\x20element,\x20cls=\x27error\x27)\x20{\x20var\x20div\x20=\x20$(\x27<div>\x27)\x20.attr(\x27class\x27,\x20\x27status\x20\x27+cls)\x20.text(msg);\x20$(element).after(div);\x20}\x20function\x20removeStatus()\x20{\x20$(\x27#save\x27).removeAttr(\x27disabled\x27);\x20$(\x27#adminSave\x27).removeAttr(\x27disabled\x27);\x20$(\x27#clientSave\x27).removeAttr(\x27disabled\x27);\x20$(\x27.status\x27).remove();\x20}\x20function\x20changeLabel()\x20{\x20$(\x22label[for=key]\x22).html(\x27Token\x20<span\x20style=\x22color:\x20red;\x22>*</span>\x27);\x20console.log($(\x22#integrasi\x22).val());\x20var\x20labelArr\x20=\x20{\x22woowacrmv2\x22:\x20\x22DeviceID\x22,\x20\x22woowaeco\x22:\x20\x22Key\x22,\x20\x22woowandroidv1\x22:\x20\x22CS\x20ID\x22,\x20\x22woowandroidv2\x22:\x20\x22CS\x20ID\x22,\x20\x22woowamultics\x22:\x20\x22Device\x20Key\x22};\x20var\x20label\x20=\x20$(\x22#integrasi\x22).val()\x20==\x20\x27\x27?\x27Token\x27:labelArr[$(\x22#integrasi\x22).val()];\x20$(\x22label[for=key]\x22).html(label+\x27\x20<span\x20style=\x22color:\x20red;\x22>*</span>\x27);\x20}\x20function\x20toggleadminNotify()\x20{\x20$(\x27.status\x27).remove();\x20if($(\x27#adminNotify\x27).is(\x27:checked\x27))\x20{\x20$(\x27#adminOptions\x27).show();\x20}\x20else\x20{\x20$(\x27#adminOptions\x27).hide();\x20}\x20}\x20function\x20toggleclientNotify()\x20{\x20$(\x27.status\x27).remove();\x20if($(\x27#clientNotify\x27).is(\x27:checked\x27))\x20{\x20$(\x27#clientOptions\x27).show();\x20}\x20else\x20{\x20$(\x27#clientOptions\x27).hide();\x20}\x20}\x20function\x20toggledefaultCountrycode()\x20{\x20$(\x27.status\x27).remove();\x20if($(\x27#defaultCountrycode\x27).is(\x27:checked\x27))\x20{\x20$(\x27#defaultCountrycodeContent\x27).show();\x20}\x20else\x20{\x20$(\x27#defaultCountrycodeContent\x27).hide();\x20}\x20}\x20</script>','woowaeco','no_wa','error','object','Reminder','AuthMode','[Date]','MULTIPLE_CHOICE','76686mvTFUF','Woowa\x20Title','getTitle','Timestamp','key','replace','getId','function','addToUi','ON_FORM_SUBMIT','[timestamp]','TEXT','getContentText','https://app.multics.id/api/send-text','exception','matchAll','integrasi','deleteProperty','constructor','getUserTriggers','bind','allItems','FULL','SCALE','getProperties','getAuthorizationInfo','getProperty','emailSetTriggers','Trigger\x20already\x20installed\x20from\x20other\x20user,\x20unset\x20trigger\x20from\x20this\x20user','1606430OqQMEz','true','country_type','response','getDocumentProperties','REQUIRED','adminNotify','application/json','noWaAdmin','getResponse','random','646316iahILA','Error:\x20integrasi\x20value\x20is\x20','notice','ItemType','<meta\x20name=\x22viewport\x22\x20content=\x22width=device-width,\x20initial-scale=1.0\x22>\x20<div\x20id=\x22content\x22>\x20<!--\x20Tab\x20links\x20-->\x20<div\x20class=\x22tab\x22>\x20<button\x20class=\x22tablinks\x20active\x22\x20onclick=\x22openTab(event,\x20\x27Settings\x27)\x22>Settings</button>\x20<button\x20class=\x22tablinks\x22\x20onclick=\x22openTab(event,\x20\x27Client\x27)\x22>Client</button>\x20<button\x20class=\x22tablinks\x22\x20onclick=\x22openTab(event,\x20\x27Admin\x27)\x22>Admin</button>\x20</div>\x20<!--\x20Tab\x20content\x20-->\x20<div\x20id=\x22Settings\x22\x20class=\x22tabcontent\x22\x20style=\x22display:\x20block;\x22>\x20<div\x20class=\x22block\x20form-group\x22>\x20<label\x20for=\x22integrasi\x22>Type\x20<span\x20style=\x22color:\x20red;\x22>*</span></label>\x20<select\x20id=\x22integrasi\x22>\x20<option\x20value=\x27\x27>--\x20Select\x20--</option>\x20<option\x20value=\x27woowamultics\x27>Woowa\x20Multics</option>\x20<option\x20value=\x27woowacrmv2\x27>Woowa\x20Crm\x20(Chrome\x20Extension)</option>\x20<option\x20value=\x27woowaeco\x27>Woowa\x20Eco</option>\x20<option\x20value=\x27woowandroidv1\x27>Woowandroid\x20v1</option>\x20<option\x20value=\x27woowandroidv2\x27>Woowandroid\x20v2</option>\x20</select>\x20</div>\x20<div\x20class=\x22form-group\x22>\x20<label\x20for=\x22key\x22>Token\x20<span\x20style=\x22color:\x20red;\x22>*</span></label>\x20<input\x20type=\x22text\x22\x20id=\x22key\x22\x20name=\x22key\x22\x20placeholder=\x22Ex:\x20db63f52c1a00d33cf143524083dd3xxx..\x22>\x20</div>\x20<div\x20class=\x22defaultCountrycode\x22>\x20<input\x20type=\x22checkbox\x22\x20id=\x22defaultCountrycode\x22>\x20<label\x20for=\x22defaultCountrycode\x22>Set\x20default\x20country\x20code?</label>\x20</div>\x20<div\x20id=\x22defaultCountrycodeContent\x22>\x20<div\x20class=\x22form-group\x22>\x20<label\x20for=\x22country_code\x22>Country\x20Code</label>\x20<input\x20type=\x22text\x22\x20id=\x22country_code\x22\x20name=\x22country_code\x22\x20placeholder=\x2262\x22>\x20</div>\x20<div\x20class=\x22form-group-radio\x22>\x20<input\x20type=\x22radio\x22\x20id=\x22flexible_country\x22\x20name=\x22country_type\x22\x20value=\x22flexible\x22>\x20<label\x20for=\x22flexible_country\x22><small\x20color=\x22grey\x22>Flexible:\x20123xxx\x20=>\x20123xxx\x20|\x2008xxx\x20=>\x20<span\x20class=\x22default_country\x22>62</span>8xxx</small></label>\x20</div>\x20<div\x20class=\x22form-group-radio\x22>\x20<input\x20type=\x22radio\x22\x20id=\x22fixed_country\x22\x20name=\x22country_type\x22\x20value=\x22fixed\x22>\x20<label\x20for=\x22fixed_country\x22><small\x20color=\x22#555\x22>Fixed:\x20123xxx\x20=>\x20<span\x20class=\x22default_country\x22>62</span>123xxx\x20|\x2008xxx\x20=>\x20<span\x20class=\x22default_country\x22>62</span>8xxx\x20</small></label>\x20</div>\x20</div>\x20<div\x20class=\x22form-group\x22\x20id=\x22button-bar\x22\x20style=\x22margin:\x2015px\x200\x205px;\x22>\x20<button\x20class=\x22action\x22\x20id=\x22save\x22>Save</button>\x20</div>\x20</div>\x20<div\x20id=\x22Client\x22\x20class=\x22tabcontent\x22>\x20<div\x20class=\x22clientNotifyForm\x22>\x20<input\x20type=\x22checkbox\x22\x20id=\x22clientNotify\x22>\x20<label\x20for=\x22clientNotify\x22>Send\x20wa\x20to\x20client?</label>\x20</div>\x20<div\x20id=\x22clientOptions\x22>\x20<div\x20class=\x22form-group\x22>\x20<label\x20for=\x22no_wa\x22>No\x20Wa</label>\x20<select\x20id=\x22no_wa\x22>\x20<option\x20value=\x27\x27>--\x20Select\x20--</option>\x20</select>\x20</div>\x20<div\x20class=\x22form-group\x22>\x20<label\x20for=\x22template\x22>Template</label>\x20<textarea\x20name=\x22template\x22\x20id=\x22template\x22\x20rows=\x227\x22\x20placeholder=\x22Ex:\x20hi,\x20[Name]\x20and\x20your\x20number\x20:\x20[No\x20Wa]...\x22></textarea>\x20<div\x20class=\x22shortcodeTemplate\x22></div>\x20</div>\x20</div>\x20<div\x20class=\x22form-group\x22\x20id=\x22client-button-bar\x22\x20style=\x22margin:\x2015px\x200\x205px;\x22>\x20<button\x20class=\x22action\x22\x20id=\x22clientSave\x22>Save</button>\x20</div>\x20</div>\x20<div\x20id=\x22Admin\x22\x20class=\x22tabcontent\x22>\x20<div\x20class=\x22adminNotifyForm\x22>\x20<input\x20type=\x22checkbox\x22\x20id=\x22adminNotify\x22>\x20<label\x20for=\x22adminNotify\x22>Send\x20wa\x20to\x20admin?</label>\x20</div>\x20<div\x20id=\x22adminOptions\x22>\x20<div\x20class=\x22form-group\x22>\x20<label\x20for=\x22noWaAdmin\x22>No\x20Wa</label>\x20<input\x20type=\x22text\x22\x20id=\x22noWaAdmin\x22\x20placeholder=\x22Ex:\x20628xxx,628xxx\x22>\x20</div>\x20<div\x20class=\x22form-group\x22>\x20<label\x20for=\x22templateAdmin\x22>Template</label>\x20<textarea\x20name=\x22templateAdmin\x22\x20id=\x22templateAdmin\x22\x20rows=\x227\x22\x20placeholder=\x22Ex:\x20hi,\x20[Name]\x20and\x20your\x20number\x20:\x20[No\x20Wa]...\x22></textarea>\x20<div\x20class=\x22shortcodeTemplate\x22></div>\x20</div>\x20</div>\x20<div\x20class=\x22form-group\x22\x20id=\x22admin-button-bar\x22\x20style=\x22margin:\x2015px\x200\x205px;\x22>\x20<button\x20class=\x22action\x22\x20id=\x22adminSave\x22>Save</button>\x20</div>\x20</div>\x20<!--\x20</div>\x20-->\x20</div>\x20<div\x20id=\x22footer\x22\x20class=\x22sidebar\x20bottom\x22>\x20<a\x20href=\x22https://woo-wa.com\x22>\x20<img\x20alt=\x22Add-on\x20logo\x22\x20class=\x22logo\x22\x20width=\x2230\x22\x20style=\x22margin-bottom:\x20-0.7em;\x22\x20src=\x22https://woo-wa.com/wp-content/uploads/2019/05/Logo-Woo-WA-PNG-Berwarna-150px.png\x22>\x20</a>\x20<span\x20class=\x22gray\x20branding-text\x22>Form\x20Notifications\x20by\x20<a\x20href=\x22https://woo-wa.com\x22>Woowa</a>\x20','161yPvohP','getContent','user','11332penCAe','fixed','length','getEventType','concat','showModalDialog','setProperty','addItem','admin\x20notify\x20false','console','apply','date','Woowa','formName','(((.+)+)+)+$','Basic\x20NjY0NzE3MTYtMzc3ZC00YmY5LWJhNzQtOGRiMWM1ZTNhNzBh','templateAdmin','undefined','showSidebar','message','http://116.203.92.59/api/async_send_message','creatorEmail','10606448OKyNOA','getUi','replaceArray','search','clientNotify','https://crm.woo-wa.com/send/message-text','getTimestamp','[date]','setHeight','timestamp','push','toDateString','Date','exec','62NErSVI','toString','getActiveUser','About\x20Woowa','url','getProjectTriggers','getItem','slice','Bearer\x20AIzaSyCyXH1aC4rWgMQhaJuQLUTDXfWRBgrCZF4','stringify','forEach','no-cache','defaultCountrycode','getActiveForm','https://onesignal.com/api/v1/notifications','woowacrmv2','setWidth','<p>The\x20Google\x20Form\x20add-on\x20<i><?=\x20addonTitle\x20?></i>\x20is\x20set\x20to\x20run\x20automatically\x20whenever\x20a\x20form\x20is\x20submitted.\x20The\x20add-on\x20was\x20recently\x20updated\x20and\x20it\x20needs\x20you\x20to\x20re-authorize\x20it\x20to\x20run\x20on\x20your\x20behalf.</p>\x20<p>The\x20add-on\x27s\x20automatic\x20functions\x20are\x20temporarily\x20disabled\x20until\x20you\x20re-authorize\x20it.\x20To\x20do\x20so,\x20open\x20Google\x20Form\x20and\x20run\x20the\x20add-on\x20from\x20the\x20Add-ons\x20menu.\x20Alternatively,\x20you\x20can\x20click\x20this\x20link\x20to\x20authorize\x20it:</p>\x20<p><a\x20href=\x22<?=\x20url\x20?>\x22>Re-authorize\x20the\x20add-on.</a></p>\x20<p>This\x20notification\x20email\x20will\x20be\x20sent\x20to\x20you\x20at\x20most\x20once\x20per\x20day\x20until\x20the\x20add-on\x20is\x20re-authorized.</p>','AuthorizationStatus','getResponseForItem','split','post','woowamultics','woowandroidv2','toISOString','indexOf','evaluate','setTitle','getItemById','info','fetch','getAuthorizationUrl','822yRIzaR','application/x-www-form-urlencoded','lastAuthEmailDate','log','Set\x20trigger','getItems','getRespondentEmail','2660499DvCyFs','48223gpTjuZ','[Timestamp]','createAddonMenu','GRID','__proto__','getEmail','floor','https://fcm.googleapis.com/fcm/send','respondToFormSubmit','sleep','getRemainingDailyQuota'];_0x309d=function(){return _0xd067e8;};return _0x309d();}function cekTrigger(){var _0x3f2ba7=_0x5cae11,_0x51e729=getSettings();return _0x51e729[_0x3f2ba7(0x13f)]!=''?!![]:![];}function deleteSubmitTrigger(){var _0x3bca9f=_0x5cae11,_0x595ad4=ScriptApp[_0x3bca9f(0x17d)](),_0x3459de=FormApp[_0x3bca9f(0x185)]();_0x595ad4=ScriptApp[_0x3bca9f(0x137)](_0x3459de);for(var _0x38c438=0x0;_0x38c438<_0x595ad4[_0x3bca9f(0x156)];_0x38c438++){ScriptApp['deleteTrigger'](_0x595ad4[_0x38c438]);}}function showSidebar(_0x3ba319){var _0x848750=_0x5cae11,_0x1070a3=HtmlService[_0x848750(0x116)](_0x848750(0x150)+ADDON_VERSION+_0x848750(0x11b))['evaluate']()[_0x848750(0xfc)]('Woowa\x20Settings');FormApp['getUi']()[_0x848750(0x166)](_0x1070a3);}function showAbout(){var _0x5a024b=_0x5cae11,_0x31fedc=HtmlService['createHtmlOutput']('plugin\x20integrasi\x20woowa\x20dan\x20google\x20form')[_0x5a024b(0x188)](0x1a4)[_0x5a024b(0x172)](0x10e);FormApp[_0x5a024b(0x16b)]()[_0x5a024b(0x159)](_0x31fedc,_0x5a024b(0x17b));}function saveSettings(_0x930cea){var _0x2b136e=_0x5cae11;setTrigger(),PropertiesService[_0x2b136e(0x145)]()['setProperties'](_0x930cea);}function getSettings(){var _0x57c817=_0x5cae11,_0x4827a9=PropertiesService[_0x57c817(0x145)]()[_0x57c817(0x13c)]();!_0x4827a9[_0x57c817(0x169)]&&(_0x4827a9[_0x57c817(0x169)]=Session['getEffectiveUser']()[_0x57c817(0x10e)]());var _0x3e2833=FormApp[_0x57c817(0x185)](),_0x522ecb=_0x3e2833[_0x57c817(0x106)](FormApp[_0x57c817(0x14f)][_0x57c817(0x12f)]),_0x3c91f2=_0x3e2833['getItems'](FormApp[_0x57c817(0x14f)]['PARAGRAPH_TEXT']),_0x268b48=_0x3e2833['getItems'](FormApp[_0x57c817(0x14f)]['CHECKBOX']),_0x371de3=_0x3e2833[_0x57c817(0x106)](FormApp[_0x57c817(0x14f)][_0x57c817(0x123)]),_0xb763f2=_0x3e2833[_0x57c817(0x106)](FormApp[_0x57c817(0x14f)][_0x57c817(0x115)]),_0x218ccc=_0x3e2833[_0x57c817(0x106)](FormApp[_0x57c817(0x14f)][_0x57c817(0x13b)]),_0x20a385=_0x3e2833[_0x57c817(0x106)](FormApp[_0x57c817(0x14f)][_0x57c817(0x10c)]),_0x1f8a11=_0x3e2833[_0x57c817(0x106)](FormApp['ItemType']['CHECKBOX_GRID']),_0x2511c3=_0x522ecb[_0x57c817(0x158)](_0x3c91f2,_0x268b48,_0x1f8a11,_0x20a385,_0x371de3,_0xb763f2,_0x218ccc);_0x4827a9[_0x57c817(0x139)]=[];for(var _0x2ad843=0x0;_0x2ad843<_0x2511c3[_0x57c817(0x156)];_0x2ad843++){_0x4827a9[_0x57c817(0x139)][_0x57c817(0x174)]({'title':_0x2511c3[_0x2ad843][_0x57c817(0x126)](),'id':_0x2511c3[_0x2ad843][_0x57c817(0x12a)]()});}return _0x4827a9;}function adjustFormSubmitTrigger(){var _0x3d0d99=_0x5cae11,_0x3b2135=FormApp[_0x3d0d99(0x185)](),_0x535b37=ScriptApp['getUserTriggers'](_0x3b2135),_0x3944fa=_0x3d0d99(0x142),_0x3f7453=null;for(var _0x237028=0x0;_0x237028<_0x535b37[_0x3d0d99(0x156)];_0x237028++){if(_0x535b37[_0x237028][_0x3d0d99(0x157)]()==ScriptApp['EventType'][_0x3d0d99(0x12d)]){_0x3f7453=_0x535b37[_0x237028];break;}}if(_0x3944fa&&!_0x3f7453)var _0xbca721=ScriptApp['newTrigger'](_0x3d0d99(0x111))['forForm'](_0x3b2135)['onFormSubmit']()[_0x3d0d99(0x11a)]();else!_0x3944fa&&_0x3f7453&&ScriptApp['deleteTrigger'](_0x3f7453);}function respondToFormSubmit(_0xdd82af){var _0x48fc3d=_0x5cae11,_0x25d8f7=ScriptApp['getAuthorizationInfo'](ScriptApp[_0x48fc3d(0x121)][_0x48fc3d(0x13a)]);_0x25d8f7['getAuthorizationStatus']()==ScriptApp[_0x48fc3d(0xf3)][_0x48fc3d(0x146)]?sendReauthorizationRequest():sendRespondentNotification(_0xdd82af);}function sendReauthorizationRequest(){var _0x5efbb6=_0x5cae11,_0x932bc=PropertiesService[_0x5efbb6(0x145)](),_0x390853=ScriptApp[_0x5efbb6(0x13d)](ScriptApp['AuthMode'][_0x5efbb6(0x13a)]),_0x1af465=_0x932bc['getProperty'](_0x5efbb6(0x103)),_0x9be141=new Date()[_0x5efbb6(0x175)]();if(_0x1af465!=_0x9be141){if(MailApp[_0x5efbb6(0x113)]()>0x0){var _0x50ceee=HtmlService[_0x5efbb6(0x116)](_0x5efbb6(0xf2));_0x50ceee[_0x5efbb6(0x17c)]=_0x390853[_0x5efbb6(0x100)](),_0x50ceee[_0x5efbb6(0x14e)]=NOTICE;var _0x244ac5=_0x50ceee[_0x5efbb6(0xfb)]();MailApp['sendEmail'](Session['getEffectiveUser']()['getEmail'](),'Authorization\x20Required',_0x244ac5[_0x5efbb6(0x152)](),{'name':ADDON_TITLE,'htmlBody':_0x244ac5[_0x5efbb6(0x152)]()});}_0x932bc[_0x5efbb6(0x15a)](_0x5efbb6(0x103),_0x9be141);}}function sendToAdmin(_0x3de648){var _0x31c0f9=_0x5cae11,_0x3f9aac=PropertiesService[_0x31c0f9(0x145)](),_0x1a63fb=_0x3f9aac['getProperty'](_0x31c0f9(0x147));if(_0x1a63fb===_0x31c0f9(0x142)){var _0x181b09=_0x3f9aac[_0x31c0f9(0x13e)](_0x31c0f9(0x149)),_0x3055a1=_0x181b09[_0x31c0f9(0xf5)](',');_0x3055a1[_0x31c0f9(0x182)](function(_0x302c47,_0x140641){var _0x313d70=_0x31c0f9,_0x388a48=getSettings();_0x302c47=validatePhone(_0x302c47);switch(_0x388a48[_0x313d70(0x134)]){case _0x313d70(0x11c):woowaEcoSendWa(_0x302c47,_0x3de648,_0x388a48[_0x313d70(0x128)]);break;case _0x313d70(0x187):woowaCrmV2SendWa(_0x302c47,_0x3de648,_0x388a48[_0x313d70(0x128)]);break;case'woowandroidv1':woowaAndroidV1SendWa(_0x302c47,_0x3de648,_0x388a48['key']);break;case _0x313d70(0xf8):woowaAndroidV2SendWa(_0x302c47,_0x3de648,_0x388a48[_0x313d70(0x128)]);break;case _0x313d70(0xf7):woowaMulticsSendWa(_0x302c47,_0x3de648,_0x388a48[_0x313d70(0x128)]);break;default:Logger[_0x313d70(0x104)](_0x313d70(0x14d)+_0x388a48[_0x313d70(0x134)]);break;}Utilities['sleep'](0x7*0x3e8);});}else Logger[_0x31c0f9(0x104)](_0x31c0f9(0x15c));return;}function getOutputTemplate(_0x3297ce,_0x5b62c7){var _0x5c584a=_0x5cae11,_0x274449=[],_0xd0d584=[],_0x5e1693=[],_0x5d9aa3,_0x3e086c=/\[([^\]]+)\]/g;while(_0x5d9aa3=_0x3e086c[_0x5c584a(0x177)](_0x3297ce)){_0x274449[_0x5c584a(0x174)](_0x5d9aa3[0x1]);}if(_0x274449){_0x274449[_0x5c584a(0x182)](function(_0x533d1e,_0x14946c){var _0x4f9913=_0x5c584a,_0x87f079=objectifyForm(_0x5b62c7);_0x87f079[_0x533d1e]&&(_0xd0d584[_0x4f9913(0x174)]('['+_0x533d1e+']'),_0x5e1693['push'](_0x87f079[_0x533d1e]));var _0x154d02=new Date()[_0x4f9913(0xf9)]()[_0x4f9913(0xf5)]('T')[_0x4f9913(0x118)]('\x20')['slice'](0x0,0xa),_0x5201c0=new Date()['toISOString']()[_0x4f9913(0xf5)]('T')[_0x4f9913(0x118)]('\x20')[_0x4f9913(0x17f)](0x0,0x13);_0x533d1e==_0x4f9913(0x127)&&(_0xd0d584[_0x4f9913(0x174)](_0x4f9913(0x10a)),_0x5e1693[_0x4f9913(0x174)](_0x154d02)),_0x533d1e==_0x4f9913(0x173)&&(_0xd0d584[_0x4f9913(0x174)](_0x4f9913(0x12e)),_0x5e1693['push'](_0x154d02)),_0x533d1e==_0x4f9913(0x176)&&(_0xd0d584[_0x4f9913(0x174)](_0x4f9913(0x122)),_0x5e1693[_0x4f9913(0x174)](_0x5201c0)),_0x533d1e==_0x4f9913(0x15f)&&(_0xd0d584['push'](_0x4f9913(0x171)),_0x5e1693[_0x4f9913(0x174)](_0x5201c0));});var _0x35e4b1=_0x3297ce['replaceArray'](_0xd0d584,_0x5e1693);return _0x35e4b1;}}function sendRespondentNotification(_0x5c10d2){var _0x3b0022=_0x5cae11,_0x26cd69=_0x5c10d2[_0x3b0022(0x144)],_0x2725c1=FormApp[_0x3b0022(0x185)](),_0x5ea2fe=PropertiesService[_0x3b0022(0x145)](),_0x30f29e=_0x5ea2fe['getProperty'](_0x3b0022(0x11d)),_0x1756de=_0x2725c1[_0x3b0022(0xfd)](parseInt(_0x30f29e)),_0x4d766d=_0x26cd69[_0x3b0022(0xf4)](_0x1756de)[_0x3b0022(0x14a)]();_0x4d766d=validatePhone(_0x4d766d);if(_0x4d766d==''){Logger['log']('No\x20Wa\x20is\x20empty');return;}var _0x57c2c9=getSettings();if(_0x57c2c9[_0x3b0022(0x134)]){var _0x3b9b88=_0x5ea2fe[_0x3b0022(0x13e)]('template'),_0x4a0502=_0x5ea2fe['getProperty'](_0x3b0022(0x164)),_0x36fa79=getOutputTemplate(_0x3b9b88,_0x26cd69),_0x5e13b2=getOutputTemplate(_0x4a0502,_0x26cd69),_0xeb08d8=_0x5ea2fe[_0x3b0022(0x13e)](_0x3b0022(0x16e));if(_0xeb08d8==='true'){switch(_0x57c2c9[_0x3b0022(0x134)]){case _0x3b0022(0x11c):woowaEcoSendWa(_0x4d766d,_0x36fa79,_0x57c2c9[_0x3b0022(0x128)]);break;case _0x3b0022(0x187):woowaCrmV2SendWa(_0x4d766d,_0x36fa79,_0x57c2c9['key']);break;case'woowandroidv1':woowaAndroidV1SendWa(_0x4d766d,_0x36fa79,_0x57c2c9[_0x3b0022(0x128)]);break;case _0x3b0022(0xf8):woowaAndroidV2SendWa(_0x4d766d,_0x36fa79,_0x57c2c9[_0x3b0022(0x128)]);break;case _0x3b0022(0xf7):woowaMulticsSendWa(_0x4d766d,_0x36fa79,_0x57c2c9['key']);break;default:Logger[_0x3b0022(0x104)](_0x3b0022(0x14d)+_0x57c2c9[_0x3b0022(0x134)]);break;}Utilities[_0x3b0022(0x112)](0x7*0x3e8);}sendToAdmin(_0x5e13b2);return;}}String['prototype'][_0x5cae11(0x16c)]=function(_0x47654a,_0x87fef3){var _0x5e4ff7=_0x5cae11,_0x2a7799=this;if(_0x47654a['length']>0x0&&_0x87fef3['length']>0x0)for(var _0x8f670b=0x0;_0x8f670b<_0x47654a['length'];_0x8f670b++){_0x2a7799=_0x2a7799['replace'](_0x47654a[_0x8f670b],_0x87fef3[_0x8f670b]);}else{var _0x5f12b4='';for(var _0x8f670b=0x0;_0x8f670b<_0x2a7799[_0x5e4ff7(0x156)];_0x8f670b++){_0x5f12b4+=_0x2a7799[_0x8f670b];}_0x2a7799=_0x5f12b4;}return _0x2a7799;};function objectifyForm(_0x5ad6d4){var _0x3e6a88=_0x5cae11,_0x1d2805=FormApp[_0x3e6a88(0x185)](),_0x33eede=_0x5ad6d4['getItemResponses'](),_0x56b9e0={};_0x56b9e0[_0x3e6a88(0x153)]=_0x5ad6d4[_0x3e6a88(0x107)](),_0x56b9e0['timestamp']=_0x5ad6d4[_0x3e6a88(0x170)](),_0x56b9e0[_0x3e6a88(0x161)]=_0x1d2805[_0x3e6a88(0x126)]();for(var _0x5d45de=0x0;_0x5d45de<_0x33eede[_0x3e6a88(0x156)];_0x5d45de++){var _0xe6c690=_0x33eede[_0x5d45de]['getResponse'](),_0x49487=_0x33eede[_0x5d45de][_0x3e6a88(0x17e)]()[_0x3e6a88(0x126)]();_0x56b9e0[_0x49487]=_0xe6c690;}return _0x56b9e0;}function validatePhone(_0xdfa11a){var _0x253ccd=_0x5cae11,_0x696c4b=getSettings(),_0x3cef28=_0x696c4b[_0x253ccd(0x184)]=='true'?_0x696c4b[_0x253ccd(0x119)]?_0x696c4b[_0x253ccd(0x119)]:'62':'62';_0xdfa11a=_0xdfa11a[_0x253ccd(0x179)]();var _0xdfa11a=_0xdfa11a['split'](/[^0-9]/)[_0x253ccd(0x118)]('');return _0xdfa11a=_0xdfa11a[_0x253ccd(0x129)](/^[0]/,_0x3cef28),_0x696c4b['defaultCountrycode']==_0x253ccd(0x142)&&_0x696c4b[_0x253ccd(0x143)]==_0x253ccd(0x155)&&(_0xdfa11a=_0xdfa11a[_0x253ccd(0xfa)](_0x3cef28)!==0x0?_0x3cef28+_0xdfa11a:_0xdfa11a),'+'+_0xdfa11a;}function spinText(_0x5ca06b){var _0x2e7711=_0x5cae11,_0xea5a79=[..._0x5ca06b[_0x2e7711(0x133)](/\{(.*?)\}/g)];return _0xea5a79[_0x2e7711(0x156)]&&_0xea5a79[_0x2e7711(0x182)](_0x55d0bc=>{var _0x1bb7b7=_0x2e7711;arr_item=_0x55d0bc[_0x1bb7b7(0x179)]()[_0x1bb7b7(0xf5)](','),i=arr_item[0x0],v=arr_item[0x1],arr_spined=v[_0x1bb7b7(0x179)]()[_0x1bb7b7(0xf5)]('|'),random=Math[_0x1bb7b7(0x10f)](Math[_0x1bb7b7(0x14b)]()*arr_spined[_0x1bb7b7(0x156)]),spined=arr_spined[random],_0x5ca06b=_0x5ca06b[_0x1bb7b7(0x129)](i,spined);}),_0x5ca06b;}function woowaEcoSendWa(_0x29cb5a,_0x2d7fcb,_0x565de7){var _0x1f9491=_0x5cae11,_0x2d7fcb=spinText(_0x2d7fcb),_0x461648={'phone_no':_0x29cb5a,'message':_0x2d7fcb,'key':_0x565de7};Logger[_0x1f9491(0x104)](JSON[_0x1f9491(0x181)](_0x461648));var _0x4b6f98=_0x1f9491(0x168),_0xabfb83=JSON[_0x1f9491(0x181)](_0x461648),_0x593941={'contentType':_0x1f9491(0x148)},_0x43a609={'method':_0x1f9491(0xf6),'payload':_0xabfb83,'headers':_0x593941,'contentType':'application/json','muteHttpExceptions':!![]},_0x210088=UrlFetchApp['fetch'](_0x4b6f98,_0x43a609),_0x5ca547=_0x210088[_0x1f9491(0x130)]();return Logger[_0x1f9491(0x104)](_0x5ca547),_0x5ca547;}function woowaAndroidV1SendWa(_0x1475e0,_0xf9437f,_0x4e89d4){var _0x507b4a=_0x5cae11,_0xf9437f=spinText(_0xf9437f),_0x385fac={'type':_0x507b4a(0x120),'message':_0xf9437f,'no_wa':_0x1475e0},_0x4deaab=_0x507b4a(0x186),_0x1a3670={'app_id':'429d3472-da0f-4b2b-a63e-4644050caf8f','include_player_ids':[_0x4e89d4],'data':_0x385fac,'contents':{'en':_0x507b4a(0x125)},'headings':{'en':'Woowa\x20Title'}},_0x288a32=JSON['stringify'](_0x1a3670),_0x587298={'Content-Type':_0x507b4a(0x148),'Authorization':_0x507b4a(0x163)},_0x309e1f={'method':'post','payload':_0x288a32,'headers':_0x587298,'muteHttpExceptions':!![]},_0x29594f=UrlFetchApp[_0x507b4a(0xff)](_0x4deaab,_0x309e1f),_0x1b8250=_0x29594f[_0x507b4a(0x130)]();return Logger[_0x507b4a(0x104)](_0x1b8250),_0x1b8250;}function woowaAndroidV2SendWa(_0x134729,_0x201dd4,_0x559b14){var _0x206af3=_0x5cae11,_0x201dd4=spinText(_0x201dd4),_0xe37d32=_0x206af3(0x110),_0x597582={'to':_0x559b14,'data':{'number':_0x134729,'message':_0x201dd4}},_0x53b0f5=JSON['stringify'](_0x597582),_0x434645={'Content-Type':_0x206af3(0x148),'Authorization':_0x206af3(0x180)},_0x47f439={'method':'post','payload':_0x53b0f5,'headers':_0x434645,'muteHttpExceptions':!![]},_0x205382=UrlFetchApp['fetch'](_0xe37d32,_0x47f439),_0x385358=_0x205382[_0x206af3(0x130)]();return Logger[_0x206af3(0x104)](_0x385358),_0x385358;}function woowaCrmV2SendWa(_0x5dc93c,_0x12314,_0x186f81){var _0x421ae5=_0x5cae11,_0x12314=spinText(_0x12314),_0x304063=_0x421ae5(0x16f),_0x2091d1={'deviceId':_0x186f81,'number':_0x5dc93c,'message':_0x12314},_0x5eff60={'Content-Type':_0x421ae5(0x102),'Cache-Control':_0x421ae5(0x183)},_0x4317a8={'method':_0x421ae5(0xf6),'payload':_0x2091d1,'headers':_0x5eff60,'muteHttpExceptions':!![]},_0x4caee6=UrlFetchApp[_0x421ae5(0xff)](_0x304063,_0x4317a8),_0x2aab22=_0x4caee6[_0x421ae5(0x130)]();return Logger[_0x421ae5(0x104)](_0x2aab22),_0x2aab22;}function woowaMulticsSendWa(_0x40ebfd,_0x4ee3de,_0x2760d3){var _0x4e95eb=_0x5cae11,_0x4ee3de=spinText(_0x4ee3de),_0x349d72=_0x4e95eb(0x131),_0xb8ca81={'number':_0x40ebfd,'message':_0x4ee3de},_0x3e4a3a={'Content-Type':_0x4e95eb(0x102),'device-key':_0x2760d3,'Cache-Control':_0x4e95eb(0x183)},_0xc46b9b={'method':_0x4e95eb(0xf6),'payload':_0xb8ca81,'headers':_0x3e4a3a,'muteHttpExceptions':!![]},_0x66dbc3=UrlFetchApp[_0x4e95eb(0xff)](_0x349d72,_0xc46b9b),_0x3c1c54=_0x66dbc3[_0x4e95eb(0x130)]();return Logger[_0x4e95eb(0x104)](_0x4ee3de),Logger[_0x4e95eb(0x104)](_0x3c1c54),_0x3c1c54;}

This script is used to make Woowa Add-on!

Tutorial Links
Google Docs

Contact Us


















php