Jump to content
lior I

Send a file from a Delphi VCL program using WhatsApp Cloud API

Recommended Posts

Hello. I need to send a PDF file to a WhatsApp recipient using WhatsApp Cloud API.

Can someone help me translate this WhatsApp sample curl code to Delphi pascal?
Here is the code from the WhatsApp documentation:

Step1: Upload media to cloud API.

curl -X POST \
  'https://graph.facebook.com/v15.0/FROM_PHONE_NUMBER_ID/media' \
  -H 'Authorization: Bearer ACCESS_TOKEN' \
  -F 'file=@/local/path/file.jpg;type=image/jpeg' 
  -F 'messaging_product=whatsapp'

A successful response includes an object with an identifier for the media:

{
    "id":"ID"
}
Step 2: Send message using media ID.
curl -X  POST \
 'https://graph.facebook.com/v15.0/FROM-PHONE-NUMBER-ID/messages' \
 -H 'Authorization: Bearer ACCESS_TOKEN' \
 -H 'Content-Type: application/json' \
 -d '{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "PHONE-NUMBER",
  "type": "image",
  "image": {
    "id" : "MEDIA-OBJECT-ID"
  }
}'


I’m using Delphi RIO 10.3
Thank you in advance
 

Share this post


Link to post
What's the problem with the title? I need to send a file to a WhatsApp recipient using 
the WhatsApp cloud. The documentation explains sending a JPG file and not a PDF file like I want, 
but that will be enough for me to move on.

Share this post


Link to post

 

3 hours ago, lior I said:

The documentation explains sending a JPG file

JPG or PDF it's all bits to computer, then, what the difference to Whapsapp?

Share this post


Link to post
I agree. Almost identical code for sending both types of files.
Edited by lior I

Share this post


Link to post
Quote

 

curl -X POST \
  'https://graph.facebook.com/v15.0/FROM_PHONE_NUMBER_ID/media' \
  -H 'Authorization: Bearer ACCESS_TOKEN' \
  -F 'file=@/local/path/file.jpg;type=image/jpeg' 
  -F 'messaging_product=whatsapp'

I don't know how to translate the file parameter.

-F 'file=@/local/path/file.jpg;type=image/jpeg' 

It includes both path and file type attributes.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×