Ultramsg supporta l’invio di foto, video e documenti tramite un URL diretto, ma se è necessario inviare documenti da un server locale, è necessario utilizzare e convertire i file in formato base64 e poi inviarli. Ma lo svantaggio di base64 è che la dimensione è limitata a un massimo di 10 milioni di caratteri, circa 6,5M.
Abbiamo fornito una soluzione alternativa e migliore caricando il file dal server locale a un CDN a costo zero per i clienti Ultramsg.
Route path : [POST]
/media/upload
parametri richiesti :
- file: nome del file come /percorso/esempio.pdf.
- token: il token dell’istanza.
Contents
hide
raccolta postman per fare test di caricamento dei file
è possibile importare la collezione Postman da qui.
esempio di caricamento di documenti con PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.ultramsg.com/instance950/media/upload',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('file' => new CURLFILE('sample.pdf'), 'token' => 'Yourtoken'),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Dopo l’invio della richiesta precedente, verrà restituito il link del file da utilizzare per l’invio dell’API di WhatsApp.
esempio di caricamento di documenti con Python
import requests
url = "https://api.ultramsg.com/instance950/media/upload"
payload={'token': 'Yourtoken'}
files=[
('file',('sample.pdf',open('/folder/sample.pdf','rb'),'application/pdf'))
]
headers = {}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
esempio di caricamento di documenti con c#
using System.Net;
using System.Text;
namespace FileUploadExample
{
class Program
{
static void Main(string[] args)
{
var token = "Yourtoken";
var instance = "instance950";
var filePath = "/folder/sample.pdf";
var url = "https://api.ultramsg.com/" + instance + "/media/upload/?token=" + token;
var client = new WebClient();
var response = client.UploadFile(url, "POST", filePath);
string responseInString = Encoding.UTF8.GetString(response);
Console.WriteLine(responseInString);
}
}
}
esempio di caricamento di documenti tramite curl
curl --location --request POST 'https://api.ultramsg.com/instance950/media/upload' \
--form 'file=@"/folder/sample.pdf"' \
--form 'token="Yourtoken"'
esempio per il caricamento di documenti con NodeJs – Richiesta lib
var request = require('request');
var fs = require('fs');
var options = {
'method': 'POST',
'url': 'https://api.ultramsg.com/instance950/media/upload',
'headers': {
},
formData: {
'file': {
'value': fs.createReadStream('/folder/sample.pdf'),
'options': {
'filename': 'sample.pdf',
'contentType': null
}
},
'token': 'Yourtoken'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
esempio di caricamento di documenti utilizzando vb.net
Imports System.Net
Imports System.Text
Module Program
Sub Main(args As String())
Const token As String = "Yourtoken"
Const instance = "instance950"
Const filePath = "test.jpg"
const url = "https://api.ultramsg.com/" & instance & "/media/upload/?token=" & token
Dim client = New WebClient()
Dim response = client.UploadFile(url, "POST", filePath)
Dim documentUrl As String = Encoding.UTF8.GetString(response)
Console.WriteLine(documentUrl)
End Sub
End Module