Gli ID persona provengono da
syrto_find_person, oppure dal person_id di un amministratore, azionista o titolare effettivo restituito da syrto_get_company_structure. La seconda via è la più precisa: syrto_find_person è una ricerca per nome, quindi può finire su un omonimo.
syrto_get_person_contacts
Riporta i contatti disponibili per una persona e il costo per acquistarli. Non spende crediti contatto ed è sicuro da chiamare ripetutamente.
Usalo:
- Prima di ogni acquisto. Fornisce il costo da confermare con l’utente e indica se per questa persona si possa trovare qualcosa.
- Per leggere contatti già acquistati.
- Per raccogliere dati ancora in arrivo. I fornitori restituiscono prima le email e poi i numeri di telefono, quindi i contatti con stato
IN_PROGRESSrestano incompleti per un breve periodo. Richiamare questo strumento è il modo per ottenere il resto - acquistare di nuovo significherebbe pagarlo due volte.
Argomenti
string
obbligatorio
L’ID della persona, da
syrto_find_person o da un person_id in syrto_get_company_structure.string
"en" per inglese (predefinito) o "it" per italiano.Risposta
object
id (il person_id che hai passato) e name.object
Che cosa si può acquistare, non che cosa è già posseduto:
has_email- è possibile trovare un indirizzo emailhas_direct_phone- è possibile trovare un numero di telefono direttocredit_cost- quanto costerebbe acquistarlo
false significa che per questa persona non si può trovare nulla, a nessun prezzo.object | null
Ciò che l’organizzazione ha già acquistato:
status-COMPLETED, oppureIN_PROGRESSmentre altro è ancora in arrivoemails- lista di indirizzi emailphone_numbers- lista di numeri di telefono
object | null
Crediti
available e reserved dell’organizzazione. Omesso quando la credenziale non ha un’organizzazione per cui l’API possa risolvere i crediti.syrto_request_person_contacts
Acquista i contatti di una persona. Questo spende i crediti dell’organizzazione.
Prima di acquistare
- Chiama
syrto_get_person_contactsper ilcredit_costesatto, e per verificare che per questa persona si possa trovare qualcosa. - Comunica all’utente di chi sono i contatti e quanto costano, e ottieni il suo consenso esplicito a spenderli.
- Passa quel costo come
expected_credit_cost. L’acquisto viene rifiutato se il prezzo corrente è diverso, il che intercetta un prezzo ormai vecchio - non attesta che qualcuno lo abbia approvato, quindi il passo 2 resta indispensabile.
Quando una ripetizione non costa nulla
Due meccanismi indipendenti determinano se una ripetizione viene addebitata:- L’API a monte deduplica un’intenzione di acquisto già inviata - stessa persona e stesso
force_new- per 24 ore, restituendo il primo acquisto invece di addebitare di nuovo. - Separatamente, questo strumento rifiuta i contatti che l’organizzazione già possiede, che quella finestra sia trascorsa o meno, a meno che
force_newnon siatrue.
force_new: true è protetta solo dalla prima, e acquista di nuovo una volta trascorsa la finestra.
Non usare questo strumento per raccogliere contatti ancora in arrivo. I fornitori restituiscono prima le email e poi i numeri di telefono, e syrto_get_person_contacts restituisce il resto senza costi una volta che è arrivato.
Se la chiamata va in timeout o fallisce, richiamala con la stessa intenzione di acquisto - stessa persona e stesso force_new. Aggiungere force_new la rende un acquisto diverso, addebitato per intero. expected_credit_cost e language non fanno parte dell’intenzione.
Argomenti
string
obbligatorio
La persona di cui acquistare i contatti.
integer
obbligatorio
Il
credit_cost da syrto_get_person_contacts, come mostrato all’utente.boolean
Esegue una nuova ricerca presso il fornitore per una persona i cui contatti l’organizzazione possiede già. Addebita l’intero costo. Predefinito
false. Non serve per raccogliere dati in corso di arrivo - quelli sono gratuiti tramite syrto_get_person_contacts.string
"en" per inglese (predefinito) o "it" per italiano.Risposta
object
id e name.object | null
status (COMPLETED, oppure IN_PROGRESS mentre altro è in arrivo), emails e phone_numbers. Omesso quando il fornitore non ha trovato nulla.integer
Il prezzo quotato per questo arricchimento, non un addebito confermato - l’API a monte non riporta quanto ha addebitato.
0 è l’eccezione ed è certo: un arricchimento che non trova nulla non viene addebitato affatto. Anche un valore positivo può non essere addebitato, se questa chiamata ha ripetuto un acquisto force_new identico entro 24 ore - cosa che viene replicata a monte e non è rilevabile qui.Il fornitore può non trovare nulla. È una chiamata riuscita e non fatturata: torna senza contatti e con un
warning che lo segnala. Significa “non è stato possibile trovare contatti”, non è un errore, e ritentare non cambia il risultato.