Atoka API: anagrafica da Partita Iva

by Simone Fonda

HTML

<p>
Inserisci il tuo token della API di <a href='https://atoka.io'>atoka.io</a>, una Partita Iva ed ottieni l'anagrafica dell'azienda.
</p>

<form>
    <label>Token <input id='token' value='' /></label>
    <label>P.IVA <input id='piva' value='02241890223' /></label>
    <button id='vai'>Vai</button>
</form>

<dl>
    <dt>Ragione Sociale</dt><dd id='ragioneSociale'>-</dd>
    <dt>Ateco</dt><dd id='ateco'>-</dd>
    <dt>Natura giuridica</dt><dd id='naturaGiuridica'>-</dd>
    <dt>Sede legale</dt><dd id='sedeLegale'>-</dd>
    <dt>Ricavi</dt><dd id='ricavi'>-</dd>
    <dt>Dipendenti</dt><dd id='dipendenti'>-</dd>
    <dt>Sito web</dt><dd id='sitoWeb'>-</dd>
    <dt>Email</dt><dd id='email'>-</dd>
    <dt>Telefono</dt><dd id='telefono'>-</dd>
</dl>

CSS

label { display: block; }
button { margin-bottom: 30px; }
dt { 
    clear: both; 
    float: left; 
    width: 150px; 
    text-align: right; 
    border-bottom: 1px solid #ccc;
}
dd {
    float: left; 
    color: #c00; 
    border-bottom: 1px solid #ccc;
    margin: 0px;
    padding-left: 10px;
}

JavaScript

$('#vai').click(function() {
    let token = $('#token').val(),
        piva = $('#piva').val(),
        url = `https://api.atoka.io/v2/companies?token=${token}`;

    $.post(url, {vat: piva, packages: 'base,economics,contacts,web'})
    	.done(displayData);

	return false;
});

function displayData(data) {
    let azienda = data.items[0];
	console.log('Atoka data:', azienda);

	$('#ragioneSociale').html(azienda.name);
    $('#sedeLegale').html(azienda.fullAddress);
    $('#ateco').html(
    	azienda.base.ateco[0].code + ': ' + 
	    azienda.base.ateco[0].description
    );
    $('#naturaGiuridica').html(azienda.base.legalForms[0].name);
    $('#ricavi').html(
        azienda.economics.balanceSheets[0].revenue +
    	' (al ' + azienda.economics.balanceSheets[0].date + ')'
    );
    $('#dipendenti').html(
        azienda.economics.employees[0].value +
    	' (al ' + azienda.economics.employees[0].date + ')' 
    );
    if (azienda.web && azienda.web.websites) 
    	$('#sitoWeb').html("" + azienda.web.websites[0].url);
    if (azienda.contacts.emails)
        $('#email').html(
            azienda.contacts.emails[0].address +
            ' (' + azienda.contacts.emails.length + ' in totale)'
        );
    if (azienda.contacts.phones)
        $('#telefono').html(
            azienda.contacts.phones[0].number +
            ' (' + azienda.contacts.phones.length + ' in totale)'
        );
}