SendMessage#
השיטה מיועדת לשליחת הודעת טקסט לצ'אט אישי או קבוצתי. ההודעה תתווסף לתור השליחה. ההודעה נשמרת בתור עד 24 שעות ותישלח מיד לאחר אימות הטלפון. פרמטר טווח שליחת הודעות מגדיר את זמן ההשהייה בין שליחת הודעות הנמצאות בתור
הדרכה וידאו#
Sending a message to yourself
בעת שליחת הודעות למספר שלך או לקבוצה עם משתתף אחד, מצב ההודעה 'יישלח' (one tick).
בַּקָשָׁה#
כדי לשלוח הודעת טקסט, עליך לבצע בקשה בכתובת:
לפרמטרים של בקשת apiUrl
, idInstance
ו-apiTokenInstance
, עיין ב לפני שמתחילים סָעִיף.
בקש פרמטרים#
פָּרָמֶטֶר | סוּג | הֶכְרֵחִי | תֵאוּר |
---|---|---|---|
chatId | string | כֵּן | Chat Id{:target="_blank"} |
message | string | כֵּן | טקסט הודעה. אימוג'י 😃 תווים נתמכים. דורש קידוד UTF-8 ללא BOM |
quotedMessageId | string | לֹא | מזהה הודעה מצוטט. אם קיימת, ההודעה תישלח בציטוט הודעת הצ'אט שצוינה |
linkPreview | boolean | לֹא | הפרמטר כולל הצגת תצוגה מקדימה ותיאור של הקישור. מופעל כברירת מחדל. מקבל ערכים: נכון/לא נכון |
האורך המרבי של הודעת טקסט הוא 20000 תווים
טקסט בקשה לדוגמה#
שליחת הודעה לצ'אט אישי:
{
"chatId": "11001234567@c.us",
"message": "I use Green-API to send this message to you!"
}
שליחת הודעה לצ'אט קבוצתי:
{
"chatId": "11001234567-1581234048@g.us",
"message": "I use Green-API to send this message to you!"
}
שליחת הודעה מצוטטת:
{
"chatId": "11001234567@с.us",
"message": "I use Green-API to send this message to you!",
"quotedMessageId": "361B0E63F2FDF95903B6A9C9A102F34B"
}
תְגוּבָה#
פרמטרי תגובה#
פָּרָמֶטֶר | סוּג | תֵאוּר |
---|---|---|
idMessage | string | מזהה הודעה שנשלחה |
{#response-example-body} דוגמה תגובה#
{
"idMessage": "3EB0C767D097B7C7C030"
}
שגיאות SendMessage#
לרשימה של שגיאות משותפות לכל השיטות, עיין ב שגיאות נפוצות סָעִיף
HTTP code | מזהה שגיאה | תֵאוּר |
---|---|---|
400 | האימות נכשל. פרטים: אורך 'הודעה' חייב להיות פחות או שווה ל-20000 תווים | טקסט ההודעה חייב להיות פחות או שווה ל-20000 תווים |
400 | Bad Request Validation failed | Validation error |
500 | request entity too large | Json length exceeded (>100kb) |
טקסט תגובה לדוגמה#
import requests
url = "{{apiUrl}}/waInstance{{idInstance}}/sendMessage/{{apiTokenInstance}}"
payload = {
"chatId": "11001234567@c.us",
"message": "I use Green-API to send this message to you!"
}
headers = {
'Content-Type': 'application/json'
}
response = requests.post(url, json=payload, headers=headers)
print(response.text.encode('utf8'))
<?php
//The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
$url = '{{apiUrl}}/waInstance{{idInstance}}/sendMessage/{{apiTokenInstance}}';
//chatId is the number to send the message to (@c.us for private chats, @g.us for group chats)
$data = array(
'chatId' => '71234567890@c.us',
'message' => 'Hello World'
);
$options = array(
'http' => array(
'header' => "Content-Type: application/json\r\n",
'method' => 'POST',
'content' => json_encode($data)
)
);
$context = stream_context_create($options);
$response = file_get_contents($url, false, $context);
echo $response;
?>
curl --location '{{apiUrl}}/waInstance{{idInstance}}/sendMessage/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"chatId": "71234567890@c.us",
"message": "Hello World"
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/sendMessage/")
.append({{apiTokenInstance}});
var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
var jsonBody = "{\r\n\t\"chatId\": \"11001234567@c.us\",\r\n\t\"message\": \"I use Green-API to send this message to you!\"\r\n}";
var requestEntity = new HttpEntity<>(jsonBody, headers);
var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.POST, requestEntity, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/sendMessage/")
.append({{apiTokenInstance}});
var response = Unirest.post(requestUrl.toString())
.header("Content-Type", "application/json")
.body("{\r\n\t\"chatId\": \"11001234567@c.us\",\r\n\t\"message\": \"I use Green-API to send this message to you!\"\r\n}")
.asString();
System.out.println(response);
Sub SendMessage()
Dim URL As String
Dim RequestBody As String
Dim http As Object
' The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
URL = "{{apiUrl}}/waInstance{{idInstance}}/sendMessage/{{apiTokenInstance}}"
' chatId is the number to send the message to (@c.us for private chats, @g.us for group chats)
RequestBody = "{""chatId"":""71234567890@c.us"",""message"":""Hello World""}"
Set http = CreateObject("MSXML2.XMLHTTP")
With http
.Open "POST", URL, False
.setRequestHeader "Content-Type", "application/json"
.send RequestBody
End With
Set http = Nothing
End Sub
program sendMessage;
{$APPTYPE CONSOLE}
uses
System.SysUtils,
System.Classes, System.Net.HttpClient, System.Net.URLClient, System.Net.HttpClientComponent;
var
HttpClient: TNetHTTPClient;
RequestBody: TStringStream;
RequestHeaders: TNetHeaders;
Response: IHTTPResponse;
EndpointURL, ID_INSTANCE, API_TOKEN_INSTANCE: string;
begin
ID_INSTANCE := '110100001';
API_TOKEN_INSTANCE := 'd75b3a66374942c5b3c019c698abc2067e151558acbd451234';
EndpointURL := 'https://api.greenapi.com/waInstance' + ID_INSTANCE + '/sendMessage/' + API_TOKEN_INSTANCE;
HttpClient := TNetHTTPClient.Create(nil);
RequestBody := TStringStream.Create('{ "chatId": "71234567890@c.us", "message": "test" }', TEncoding.UTF8);
RequestHeaders := [
TNetHeader.Create('Content-Type', 'application/json')
];
try
Response := HTTPClient.Post(EndpointURL, RequestBody, nil, RequestHeaders);
if Response.StatusCode = 200 then
Writeln('[Response]: ' + Response.ContentAsString)
else
Writeln('[ERROR ' + IntToStr(Response.StatusCode) + ']:' + Response.StatusText + '' + Response.ContentAsString);
readln;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
HttpClient.Free;
RequestBody.Free;
end.