Try Code
procedure Form1_Button2_OnClick (Sender: TObject; var Cancel: boolean);
var
WinHttpReq : Variant;
url : String ;
body : TStringlist;
begin
Try
WinHttpReq := CreateOleObject('WinHttp.WinHttpRequest.5.1');
url := Form1.Edit6.Text ;
body := Tstringlist.create ;
body.add('{"chatId": "'+Form1.Edit4.Text+'","message": "'+Form1.Edit5.Text+'"}');
WinHttpReq.Open('Post',url,False);
WinHttpReq.SetRequestHeader('Content-Type', 'application/json');
WinHttpReq.Send(body.Text);
Form1.Edit7.Text := WinHttpReq.StatusText ;
Form1.Memo1.Text := WinHttpReq.ResponseText ;
body.Free ;
Except
End;
end;
procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
begin
Form1.Edit6.Text :=
Form1.Edit1.Text+'/waInstance'+Form1.Edit2.Text+'/sendMessage/'+Form1.Edit3.Text ;
end;
begin
end.
Reference From https://green-api.com/en/docs/api/sending/SendMessage/
Delphi
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.