![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) Mailgun Send Send HTML Email with Attachments and HTML ImagesSee more Mailgun ExamplesSends an HTML email with images and attachments.Note: This example requires Chilkat v11.0.0 or greater. For more information, see https://documentation.mailgun.com/en/latest/api-sending.html#sending
load ./chilkat.dll set success 0 # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set http [new_CkHttp] CkHttp_put_Login $http "api" CkHttp_put_Password $http "sending_api_key"# Replace with your actual sending API key. set req [new_CkHttpRequest] CkHttpRequest_put_HttpVerb $req "POST" CkHttpRequest_put_Path $req "/v3/YOUR_DOMAIN_NAME/messages" CkHttpRequest_put_ContentType $req "multipart/form-data" # Change YOUR_DOMAIN_NAME to something like "mg.your-domain.com". CkHttpRequest_AddParam $req "from" "Your Name <mailgun@YOUR_DOMAIN_NAME>" CkHttpRequest_AddParam $req "to" "Joe Example <joe@example.com>" CkHttpRequest_AddParam $req "subject" "Hello Joe Example" CkHttpRequest_AddParam $req "html" "<html><body><b>This is the HTML body</b><br><img src=\"cid:cidStarfish.jpg\"></body></html>" # An a attachd file set bd [new_CkBinData] set success [CkBinData_LoadFile $bd "qa_data/hamlet.zip"] if {$success == 0} then { puts "Failed to load file attachment." delete_CkHttp $http delete_CkHttpRequest $req delete_CkBinData $bd exit } CkHttpRequest_AddBdForUpload $req "attachment" "hamlet.zip" $bd "application/zip" # add an image as CID set success [CkBinData_LoadFile $bd "qa_data/jpg/starfish.jpg"] if {$success == 0} then { puts "Failed to load HTML image." delete_CkHttp $http delete_CkHttpRequest $req delete_CkBinData $bd exit } CkHttpRequest_AddBdForUpload $req "inline" "cidStarfish.jpg" $bd "image/jpeg" set resp [new_CkHttpResponse] set success [CkHttp_HttpSReq $http "api.mailgun.net" 443 1 $req $resp] if {$success == 0} then { puts [CkHttp_lastErrorText $http] delete_CkHttp $http delete_CkHttpRequest $req delete_CkBinData $bd delete_CkHttpResponse $resp exit } set sbResponseBody [new_CkStringBuilder] CkHttpResponse_GetBodySb $resp $sbResponseBody set jResp [new_CkJsonObject] CkJsonObject_LoadSb $jResp $sbResponseBody CkJsonObject_put_EmitCompact $jResp 0 puts "Response Body:" puts [CkJsonObject_emit $jResp] set respStatusCode [CkHttpResponse_get_StatusCode $resp] puts "Response Status Code = $respStatusCode" if {$respStatusCode >= 400} then { puts "Response Header:" puts [CkHttpResponse_header $resp] puts "Failed." delete_CkHttp $http delete_CkHttpRequest $req delete_CkBinData $bd delete_CkHttpResponse $resp delete_CkStringBuilder $sbResponseBody delete_CkJsonObject $jResp exit } # Sample JSON response: # (Sample code for parsing the JSON response is shown below) # { # "id": "<20210429234809.1.2D550E1C94D3D98F@sandbox0e542e4c577f4bbb98c8bf6b6bca727b.mailgun.org>", # "message": "Queued. Thank you." # } # Sample code for parsing the JSON response... # Use the following online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON set id [CkJsonObject_stringOf $jResp "id"] set message [CkJsonObject_stringOf $jResp "message"] delete_CkHttp $http delete_CkHttpRequest $req delete_CkBinData $bd delete_CkHttpResponse $resp delete_CkStringBuilder $sbResponseBody delete_CkJsonObject $jResp |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.