Sample code for 30+ languages & platforms
Delphi DLL

Clickatell Send SMS Text Message using HTTP GET

See more Clickatell Examples

Demonstrate how to send a Clickatell SMS text message using an HTTP GET request with query params.

Chilkat Delphi DLL Downloads

Delphi DLL
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Http, HttpResponse, JsonObject;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
http: HCkHttp;
queryParams: HCkJsonObject;
resp: HCkHttpResponse;

begin
success := False;

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

http := CkHttp_Create();

// Implements the following CURL command:

// curl -G https://api.clickatell.com/http/sendmsg \
//   -d "api_id=xxxx" \
//   -d "user=yourUsername" \
//   -d "password=yourPassword" \
//   -d "from=yourFromPhoneNumber" \
//   -d "to=receiverPhoneNumber" \
//   -d "text=The text of your message"

// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code

queryParams := CkJsonObject_Create();
CkJsonObject_UpdateString(queryParams,'api_id','xxxx');
CkJsonObject_UpdateString(queryParams,'user','yourUsername');
CkJsonObject_UpdateString(queryParams,'password','yourPassword');
CkJsonObject_UpdateString(queryParams,'from','yourFromPhoneNumber');
CkJsonObject_UpdateString(queryParams,'to','receiverPhoneNumber');
CkJsonObject_UpdateString(queryParams,'text','The text of your message');

// If the following URL does not work, then try "https://api.clickatell.com/http/sendmsg"
resp := CkHttpResponse_Create();
success := CkHttp_HttpParams(http,'GET','https://platform.clickatell.com/messages/http/send',queryParams,resp);
if (success = False) then
  begin
    Memo1.Lines.Add(CkHttp__lastErrorText(http));
    Exit;
  end;

Memo1.Lines.Add(IntToStr(CkHttpResponse_getStatusCode(resp)));
Memo1.Lines.Add(CkHttpResponse__bodyStr(resp));

CkHttp_Dispose(http);
CkJsonObject_Dispose(queryParams);
CkHttpResponse_Dispose(resp);

end;