Sample code for 30+ languages & platforms
Rust

Cerved API Entity Search

See more Cerved Examples

Perform searches on a Subject, known indifferently, the Fiscal Code, VAT number or Name, and to obtain basic information of the Subject.

Chilkat Rust Downloads

Rust

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

let http = chilkat::Http::new();

// Implements the following CURL command:

// curl -X GET \
//   https://api.cerved.com/cervedApi/v1/entitySearch/live?testoricerca=test \
//   -H 'accept: application/json' \
//   -H 'apikey: ********************************'

// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code

http.set_request_header("accept", "application/json");
// Note: Your apikey is your Consumer Key
http.set_request_header("apikey", "********************************");

let sb_response_body = chilkat::StringBuilder::new();
if http.quick_get_sb("https://api.cerved.com/cervedApi/v1/entitySearch/live?testoricerca=test", &sb_response_body).is_err() {
    println!("{}", http.last_error_text());
    return;
}

let j_resp = chilkat::JsonObject::new();
let _ = j_resp.load_sb(&sb_response_body);
j_resp.set_emit_compact(false);

println!("Response Body:");
println!("{}", j_resp.emit().unwrap_or_default());

let resp_status_code = http.last_status();
println!("Response Status Code = {}", resp_status_code);
if resp_status_code >= 400 {
    println!("Response Header:");
    println!("{}", http.last_header());
    println!("Failed.");
    return;
}

// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)

// {
//   "peopleTotalNumber": 1,
//   "companiesTotalNumber": 49,
//   "companies": [
//     {
//       "dati_anagrafici": {
//         "id_soggetto": 12207335,
//         "denominazione": "ANGELANTONI TEST TECHNOLOGIES S.R.L. IN FORMA ABBREVIATA ATT S.R.L.",
//         "codice_fiscale": "01234567890",
//         "partita_iva": "01234567890",
//         "indirizzo": {
//           "descrizione": "LOCALITA' CIMACOLLE, 464",
//           "cap": "06056",
//           "codice_comune": "PG028",
//           "descrizione_comune": "MASSA MARTANA",
//           "codice_comune_istat": "054028",
//           "provincia": "PG",
//           "descrizione_provincia": "PERUGIA"
//         }
//       },
//       "dati_attivita": {
//         "codice_ateco": "265129",
//         "ateco": "Fabbricazione di altri apparecchi di misura e regolazione, strumenti da disegno, di contatori di elettricita', gas, acqua ed altri liquidi, di bilance analitiche di precisione (incluse parti staccate ed accessori)",
//         "codice_stato_attivita": "A",
//         "flag_operativa": true,
//         "codice_rea": "PG 272575",
//         "company_form": {
//           "code": "SR",
//           "description": "SOCIETA' A RESPONSABILITA' LIMITATA",
//           "company_form_class": "SC"
//         }
//       },
//       "dati_pa": {
//         "ente": false,
//         "fornitore": true,
//         "partecipata": false
//       }
//     },
//     {
//       "dati_anagrafici": {
//         "id_soggetto": 1046896,
//         "denominazione": "TEST INDUSTRY S.R.L.",
//         "codice_fiscale": "01234567890",
//         "partita_iva": "01234567890",
//         "indirizzo": {
//           "descrizione": "CORSO VENEZIA, 36",
//           "cap": "20121",
//           "codice_comune": "MI146",
//           "descrizione_comune": "MILANO",
//           "codice_comune_istat": "015146",
//           "provincia": "MI",
//           "descrizione_provincia": "MILANO"
//         }
//       },
//       "dati_attivita": {
//         "codice_ateco": "265129",
//         "ateco": "Fabbricazione di altri apparecchi di misura e regolazione, strumenti da disegno, di contatori di elettricita', gas, acqua ed altri liquidi, di bilance analitiche di precisione (incluse parti staccate ed accessori)",
//         "codice_stato_attivita": "A",
//         "flag_operativa": true,
//         "codice_rea": "MI 2579272",
//         "company_form": {
//           "code": "SR",
//           "description": "SOCIETA' A RESPONSABILITA' LIMITATA",
//           "company_form_class": "SC"
//         }
//       },
//       "dati_pa": {
//         "ente": false,
//         "fornitore": true,
//         "partecipata": false
//       }
//     },
//     {
//       "dati_anagrafici": {
//         "id_soggetto": 300632,
//         "denominazione": "ITW TEST AND MEASUREMENT ITALIA S.R.L.",
//         "codice_fiscale": "01234567890",
//         "partita_iva": "01234567890",
//         "indirizzo": {
//           "descrizione": "VIA AIRAUDA, 12",
//           "cap": "10044",
//           "codice_comune": "TO189",
//           "descrizione_comune": "PIANEZZA",
//           "codice_comune_istat": "001189",
//           "provincia": "TO",
//           "descrizione_provincia": "TORINO"
//         }
//       },
//       "dati_attivita": {
//         "codice_ateco": "265129",
//         "ateco": "Fabbricazione di altri apparecchi di misura e regolazione, strumenti da disegno, di contatori di elettricita', gas, acqua ed altri liquidi, di bilance analitiche di precisione (incluse parti staccate ed accessori)",
//         "codice_stato_attivita": "A",
//         "flag_operativa": true,
//         "codice_rea": "TO 379571",
//         "company_form": {
//           "code": "SU",
//           "description": "SOCIETA' A RESPONSABILITA' LIMITATA CON UNICO SOCIO",
//           "company_form_class": "SC"
//         }
//       },
//       "dati_pa": {
//         "ente": false,
//         "fornitore": true,
//         "partecipata": false
//       }
//     }
//   ],
//   "people": [
//     {
//       "dati_anagrafici": {
//         "id_soggetto": 333333333,
//         "denominazione": "ROBUSTELLI TEST ALESSANDRO",
//         "dt_nascita": "08-22-1978",
//         "codice_fiscale": "RBSSMMMMMMMMMMMM",
//         "indirizzo": {
//           "descrizione": "VIA ALESSANDRINI, 22",
//           "cap": "26027",
//           "codice_comune": "CR084",
//           "descrizione_comune": "RIVOLTA D'ADDA",
//           "codice_comune_istat": "019084",
//           "provincia": "CR",
//           "descrizione_provincia": "CREMONA"
//         }
//       }
//     }
//   ]
// }

// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON

let people_total_number = j_resp.int_of("peopleTotalNumber");
let companies_total_number = j_resp.int_of("companiesTotalNumber");
let mut i = 0;
let mut count_i = j_resp.size_of_array("companies");
while i < count_i {
    j_resp.set_i(i);
    let _ = j_resp.int_of("companies[i].dati_anagrafici.id_soggetto");
    let _ = j_resp.string_of("companies[i].dati_anagrafici.denominazione").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.codice_fiscale").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.partita_iva").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.indirizzo.descrizione").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.indirizzo.cap").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.indirizzo.codice_comune").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.indirizzo.descrizione_comune").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.indirizzo.codice_comune_istat").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.indirizzo.provincia").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_anagrafici.indirizzo.descrizione_provincia").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_attivita.codice_ateco").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_attivita.ateco").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_attivita.codice_stato_attivita").unwrap_or_default();
    let _ = j_resp.bool_of("companies[i].dati_attivita.flag_operativa");
    let _ = j_resp.string_of("companies[i].dati_attivita.codice_rea").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_attivita.company_form.code").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_attivita.company_form.description").unwrap_or_default();
    let _ = j_resp.string_of("companies[i].dati_attivita.company_form.company_form_class").unwrap_or_default();
    let _ = j_resp.bool_of("companies[i].dati_pa.ente");
    let _ = j_resp.bool_of("companies[i].dati_pa.fornitore");
    let _ = j_resp.bool_of("companies[i].dati_pa.partecipata");
    i = i + 1;
}

i = 0;
count_i = j_resp.size_of_array("people");
while i < count_i {
    j_resp.set_i(i);
    let _ = j_resp.int_of("people[i].dati_anagrafici.id_soggetto");
    let _ = j_resp.string_of("people[i].dati_anagrafici.denominazione").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.dt_nascita").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.codice_fiscale").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.indirizzo.descrizione").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.indirizzo.cap").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.indirizzo.codice_comune").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.indirizzo.descrizione_comune").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.indirizzo.codice_comune_istat").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.indirizzo.provincia").unwrap_or_default();
    let _ = j_resp.string_of("people[i].dati_anagrafici.indirizzo.descrizione_provincia").unwrap_or_default();
    i = i + 1;
}