MASTERINFO REST APIs - Documentazione (v1)
Verificare di aver attivato le API per il proprio utente alla pagina API: ATTIVAZIONE
dove è possibile prendere visione della propria password di autenticazione.
Attenzione: le credenziali per le API sono diverse da quelle utilizzate per accedere al backend e sono disponibili solo nella pagina di attivazione API sopra indicata.
Il metodo di autenticazione previsto è HTTP Basic authentication (BA):
L'header Authorization è costruito in questo modo:
Username e password sono uniti nella stringa "username:password" che successivamente viene codificata con base64
La stringa già codificata sarà disponibile nella pagina di attivazione API.
Esempio:
username: test@email.it
password: $avr1$r078bsgm$f0dioKbCJmZHFPIOtmlxv5
Attenzione: le credenziali per le API sono diverse da quelle utilizzate per accedere al backend e sono disponibili solo nella pagina di attivazione API sopra indicata.
Il metodo di autenticazione previsto è HTTP Basic authentication (BA):
L'header Authorization è costruito in questo modo:
Username e password sono uniti nella stringa "username:password" che successivamente viene codificata con base64
La stringa già codificata sarà disponibile nella pagina di attivazione API.
Esempio:
username: test@email.it
password: $avr1$r078bsgm$f0dioKbCJmZHFPIOtmlxv5
Authorization: Basic dGVzdEBlbWFpbC5pdDokYXZyMSRyMDc4YnNnbSRmMGRpb0tiQ0ptWkhGUElPdG1seHY1
| URL |
/ping
|
|---|---|
| Method | GET |
| Authentication |
NOT required
|
| Response |
Status Codes: 406: Not Acceptable 415: Unsupported Media Type 200: OK 404: Not Found |
| Headers |
Content-Type: application/vnd.leads.v1+jsonapplication/json |
| Success Response |
Code: 200 Body:
|
| URL |
/user
|
|---|---|
| Method | GET |
| Authentication |
Required
|
| Response |
Status Codes: 401: Unauthorized 403: Forbidden 406: Not Acceptable 415: Unsupported Media Type 200: OK 404: Not Found |
| Headers |
Content-Type: application/vnd.leads.v1+jsonapplication/json |
| Success Response |
Code: 200 Body:
|
LEADS
Restituisce i leads ricevuti (per default degli ultimi 6 mesi, modificabile con il parametro "date_from")| URL |
/leads
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Method | GET | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Authentication |
Required
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| URL Params |
Optionalafter_id=[numeric]
Restituisce i lead successivi all'idexample: after_id=9999
date_from=[date]
Restituisce i lead successivi la data indicataexample: date_from=2017-01-01
date_to=[date]
Restituisce i lead precedenti alla data indicataexample: date_to=2017-01-01
new=TRUE
Utile per scaricare solo i nuovi lead: ogni volta che viene usato viene memorizzato l'ultimo lead restituito e alla successiva chiamata restituisce solo i successivi. E' possibile usarlo con gli altri parametri La memorizzazione dell'ultimo lead viene fatta solo quando è presente il parametro new=TRUEexample: new=TRUE |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Response |
Status Codes: 406: Not Acceptable 415: Unsupported Media Type 200: OK 404: Not Found 401: Unauthorized 403: Forbidden 400: Bad Request error |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Headers |
Content-Type: application/vnd.leads.v1+jsonapplication/json |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Success Response |
Leads collection Code: 200 Body:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Descrizione LEAD |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
$user = 'test@email.it';
$pass = '$avr1$r078bsgm$f0dioKbCJmZHFPIOtmlxv5';
$auth_code = base64_encode("$user:$pass");
$request = new HttpRequest();
$request->setUrl('https://api.masterinfo.eu/leads');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'cache-control' => 'no-cache',
'authorization' => "Basic $auth_code"
));
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}
var settings = {
"async": true,
"crossDomain": true,
"url": "https://api.masterinfo.eu/leads",
"method": "GET",
"headers": {
"authorization": "Basic dGVzdEBlbWFpbC5pdDokYXZyMSRyMDc4YnNnbSRmMGRpb0tiQ0ptWkhGUElPdG1seHY1",
"cache-control": "no-cache"
}
}
$.ajax(settings).done(function (response) {
console.log(response);
});
var http = require("https");
var options = {
"method": "GET",
"hostname": "api.masterinfo.eu",
"port": null,
"path": "/leads",
"headers": {
"authorization": "Basic dGVzdEBlbWFpbC5pdDokYXZyMSRyMDc4YnNnbSRmMGRpb0tiQ0ptWkhGUElPdG1seHY1",
"cache-control": "no-cache"
}
};
var req = http.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
ESEMPI FILTRO DATA:
leads dal 1° gennaio 2017 ad adessousername: test@email.it
password: $avr1$r078bsgm$f0dioKbCJmZHFPIOtmlxv5
$user = 'test@email.it';
$pass = '$avr1$r078bsgm$f0dioKbCJmZHFPIOtmlxv5';
$auth_code = base64_encode("$user:$pass");
$request = new HttpRequest();
$request->setUrl('https://api.masterinfo.eu/leads');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'date_from' => '2017-01-01'
));
$request->setHeaders(array(
'cache-control' => 'no-cache',
'authorization' => "Basic $auth_code"
));
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}
var settings = {
"async": true,
"crossDomain": true,
"url": "https://api.masterinfo.eu/leads?date_from=2017-01-01",
"method": "GET",
"headers": {
"authorization": "Basic dGVzdEBlbWFpbC5pdDokYXZyMSRyMDc4YnNnbSRmMGRpb0tiQ0ptWkhGUElPdG1seHY1",
"cache-control": "no-cache"
}
}
$.ajax(settings).done(function (response) {
console.log(response);
});
var http = require("https");
var options = {
"method": "GET",
"hostname": "api.masterinfo.eu",
"port": null,
"path": "/leads?date_from=2017-01-01",
"headers": {
"authorization": "Basic dGVzdEBlbWFpbC5pdDokYXZyMSRyMDc4YnNnbSRmMGRpb0tiQ0ptWkhGUElPdG1seHY1",
"cache-control": "no-cache"
}
};
var req = http.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
INTEGRAZIONE UTILIZZANDO ZAPIER
E' possibile ricevere automaticamente i leads di MasterIN sul proprio CRM (e molto altro) utilizzando Zapier,una piattaforma online che permette di integrare tra di loro diverse applicazioni e servizi web.
Qui i servizi integrati in Zapier: Integrations.
Vediamo come creare uno Zap (operazione di integrazione) partendo dall'evento di un nuovo lead:
|
Accedere a Zapier e creare un nuovo Zap Come primo passo cercare la nostra App "MasterIN" e selezionarla |
|
|---|---|
| Nella seconda schermata verificare che sia selezinata l'app "MasterIN" e il Trigger "New Lead" e continuare |
|
| E' necessario creare un nuovo account per collegarsi alla nostra App (se non è già stato fatto) |
|
| Per creare l'account è sufficiente immettere le stesse credenziali (username e password) dell'autenticazione delle API |
|
| Una volta immesso l'account è possibile testare la connessione |
|
| Terminato il test le spunte dovrebbero essere tutte verdi e quindi la connessione con la nostra app è terminata |
|
| Ora è possibile proseguire l'integrazione con una tra le tante app presenti su Zapier |
|
| Per esempio proseguiamo l'integrazione con il CRM Zoho |
|
| Scegliamo l'azione da compiere su Zoho, per esempio la creazione di un nuovo Lead sul CRM |
|
| Anche qui dobbiamo creare un account per Zoho inserendo le proprie credenziali |
|
| Qui si passa a personalizzare l'integrazione con il CRM, scegliendo "Module", "Layout" e "Workflow" |
|
| Successivamete trovate i campi che caratterizzano un lead (o quello che avete scelto) su Zoho, ad ogni campo è possibile associare un campo del lead di MasterIn, come per esempio nome, cognome, email e recapito |
|
| Terminata l'associazione è possibile testare |
|
|
Verificare che non vi siano errori e l'integrazione è terminata. Poi è possibile proseguire il flusso del Zap aggiungendo altre azioni con altri servizi, altrimenti lo Zap è terminato. |
|
| Terminato lo Zap è necessario attivarlo in modo che lavori in automatico. |
|
