Skip to content

GetSettings#

Test Postman Apidog

השיטה מיועדת לקבלת ההגדרות הנוכחיות של המופע.

בקשה#

כדי לקבל את ההגדרות הנוכחיות של המופע, יש לבצע בקשה לכתובת:

GET
{{apiUrl}}/waInstance{{idInstance}}/getSettings/{{apiTokenInstance}}

לקבלת פרמטרי הבקשה apiUrl, idInstance ו-apiTokenInstance, עיינו בסעיף לפני תחילת העבודה.

תגובה#

פרמטרי תגובה#

פרמטר סוג תיאור
wid string מזהה החשבון ב-WhatsApp
countryInstance string לא בשימוש
typeAccount string לא בשימוש
webhookUrl string כתובת URL לקבלת התראות נכנסות. בעת קבלת התראות בטכנולוגיית HTTP API, השדה חייב להיות ריק. תיאור אופן הפעולה של השדה.
webhookUrlToken string כותרת ההרשאה (Authorization) לשליחת התראות. תיאור אופן הפעולה של השדה.
delaySendMessagesMilliseconds integer מרווח שליחת ההודעות במילישניות
markIncomingMessagesReaded string סימון הודעות נכנסות כנקראו, ערכים אפשריים: yes, no. המערכת מתעלמת מההגדרה אם markIncomingMessagesReadedOnReply מוגדר ל-'yes'.
markIncomingMessagesReadedOnReply string סימון הודעות נכנסות כנקראו בעת שליחת הודעה דרך ה-API, ערכים אפשריים: yes, no. אם מוגדר ל-'yes', המערכת מתעלמת מההגדרה markIncomingMessagesReaded.
sharedSession string לא בשימוש
outgoingWebhook string קבלת התראות על סטטוסים של הודעות יוצאות, ערכים אפשריים: yes, no
outgoingMessageWebhook string קבלת התראות על הודעות שנשלחו מהטלפון, ערכים אפשריים: yes, no
outgoingAPIMessageWebhook string קבלת התראות על הודעות שנשלחו דרך ה-API, ערכים אפשריים: yes, no. בעת שליחת הודעה לחשבון WhatsApp שאינו קיים, ההתראה לא תגיע.
incomingWebhook string קבלת התראות על הודעות וקבצים נכנסים, ערכים אפשריים: yes, no
deviceWebhook string לא פועל זמנית. קבלת התראות על המכשיר (הטלפון) ועל רמת הסוללה, ערכים אפשריים: yes, no
statusInstanceWebhook string לא בשימוש
stateWebhook string קבלת התראות על שינוי מצב ההרשאה של המופע, ערכים אפשריים: yes, no
enableMessagesHistory string לא בשימוש
keepOnlineStatus string הגדרת הסטטוס 'מקוון' (online) לחשבון
pollMessageWebhook string קבלת התראות על סקרים, ערכים אפשריים: yes, no
incomingBlockWebhook string לא פועל זמנית. קבלת התראות על חסימות נכנסות של צ'אטים, ערכים אפשריים: yes, no
incomingCallWebhook string קבלת התראות על שיחות נכנסות, ערכים אפשריים: yes, no
editedMessageWebhook string קבלת התראות על הודעות שנערכו: yes, no
deletedMessageWebhook string קבלת התראות על הודעות שנמחקו: yes, no
catalogWebhook string קבלת התראות על הודעות עם מוצר ועם הזמנה, ערכים אפשריים: yes, no
autoTyping integer חישוב אוטומטי של זמן הקלדת ההודעה בהתאם לערך שהוגדר. הערך קובע את מהירות הקלדת ההודעה, מ-5 עד 50 תווים בשנייה. מקבל ערכים מ-0 עד 10. הערך 0 – מהירות ההקלדה האוטומטית מושבתת, 1 – 5 תווים בשנייה, 5 – 25 תווים בשנייה, 10 – 50 תווים בשנייה. אם בעת שליחת ההודעה צוין הפרמטר typingTime, הוא מקבל עדיפות. מידע נוסף על ההגדרה מופיע במאמר
linkPreview string הפרמטר קובע את הצגת התצוגה המקדימה של קישורים בשיטות שליחת הודעות. תצוגה מקדימה של הקישור לא תתווסף אם גודל הקובץ עולה על 2MB. ערכים אפשריים: yes, no
enableLidMode string עבודה עם מזהי צ'אט בפורמט @lid. מידע נוסף על עבודה עם @lid. ערכים אפשריים: yes, no
incomingMessageStatusWebhook string קבלת אישור קריאה עבור הודעה נכנסת מהטלפון (מכשיר מקושר); ערכים אפשריים: yes, no. למידע נוסף על אופן השימוש בהגדרה זו ועל המגבלות הקשורות אליה, אנא עיינו בשאלות הנפוצות

החלת ההגדרות

כדי לקבל התראות על סטטוסי השליחה, המסירה והקריאה של הודעות שנשלחו מהטלפון, יש להפעיל את ההגדרות:

  • outgoingMessageWebhook
  • outgoingWebhook

כדי לקבל התראות על סטטוסים של שיחה נכנסת, יש להפעיל את ההגדרות:

  • incomingCallWebhook
  • incomingWebhook

כדי לקבל התראות על סקרים ועדכוני סקרים, יש להפעיל את ההגדרות:

  • עבור הודעות שנשלחו דרך ה-API: outgoingAPIMessageWebhook ו-pollMessageWebhook
  • עבור הודעות שנשלחו מהטלפון: outgoingMessageWebhook ו-pollMessageWebhook
  • עבור התראות על סקרים נכנסים ועל תשובות לסקרים: incomingWebhook ו-pollMessageWebhook

אם הטלפון והמכשירים המקושרים כבויים, יש להפעיל את ההגדרה:

  • keepOnlineStatus – כדי להגדיר לחשבון את הסטטוס Online ולשלוח את סטטוס ההודעה delivered

כדי לקבל התראות על מחיקה או עריכה של הודעות, יש להפעיל את ההגדרות:

  • editedMessageWebhook
  • deletedMessageWebhook

דוגמה לגוף התגובה#

{
    "wid": "11001234567@c.us",
    "countryInstance": "",
    "typeAccount": "",
    "webhookUrl": "https://mysite.com/webhook/green-api/",
    "webhookUrlToken": "",
    "delaySendMessagesMilliseconds": 5000,
    "markIncomingMessagesReaded": "no",
    "markIncomingMessagesReadedOnReply": "no",
    "sharedSession": "no",
    "outgoingWebhook": "yes",
    "outgoingMessageWebhook": "yes",
    "outgoingAPIMessageWebhook": "yes",
    "incomingWebhook": "yes",
    "deviceWebhook": "no", //The notification is temporarily out of work
    "statusInstanceWebhook": "no",
    "stateWebhook": "no",
    "enableMessagesHistory": "no",
    "keepOnlineStatus": "no",
    "pollMessageWebhook": "no",
    "incomingBlockWebhook": "yes", //The notification is temporarily out of work
    "incomingCallWebhook": "yes",
    "editedMessageWebhook": "no",
    "deletedMessageWebhook": "no",
    "catalogWebhook": "no",
    "autoTyping" : 0,
    "linkPreview": "no",
    "enableLidMode": "no",
    "incomingMessageStatusWebhook": "no"
}

שגיאות GetSettings#

רשימת השגיאות המשותפות לכל השיטות מופיעה בסעיף שגיאות נפוצות

דוגמאות בקשה#

import requests

url = "{{apiUrl}}/waInstance{{idInstance}}/getSettings/{{apiTokenInstance}}"

payload = {}
headers= {}

response = requests.request("GET", url, headers=headers, data = payload)

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}}/getSettings/{{apiTokenInstance}}";

$options = array(
    'http' => array(
        'header' => "Content-Type: application/json\r\n",
        'method' => 'GET'
    )
);

$context = stream_context_create($options);

$response = file_get_contents($url, false, $context);

echo $response;
?>
curl --location '{{apiUrl}}/waInstance{{idInstance}}/getSettings/{{apiTokenInstance}}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/getSettings/")
    .append({{apiTokenInstance}});

var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.GET, null, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/getSettings/")
    .append({{apiTokenInstance}});

var response = Unirest.get(requestUrl.toString())
    .header("Content-Type", "application/json")
    .asString();

System.out.println(response);
Sub GetSettings()
    Dim url As String
    Dim http As Object
    Dim response As String

    ' The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
    url = "{{apiUrl}}/waInstance{{idInstance}}/getSettings/{{apiTokenInstance}}"

    Set http = CreateObject("WinHttp.WinHttpRequest.5.1")

    http.Open "GET", url, False
    http.Send

    response = http.responseText

    Debug.Print response

    ' Outputting the answer to the desired cell
    ' Range("A1").Value = response

    Set http = Nothing
End Sub
program GetSettings;

{$APPTYPE CONSOLE}

uses
System.SysUtils,
System.Classes, System.Net.HttpClient, System.Net.URLClient, System.Net.HttpClientComponent;

var
HttpClient: TNetHTTPClient;
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 + '/getSettings/' + API_TOKEN_INSTANCE;

HttpClient := TNetHTTPClient.Create(nil);
RequestHeaders := [
    TNetHeader.Create('Content-Type', 'application/json')
];

try
    Response := HTTPClient.Get(EndpointURL, 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;

end.