Rechercher un contact joignable
curl --request POST \
--url https://partner.urbanora.fr/v1/contacts/find \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"intent": "company_default"
}
'const options = {
method: 'POST',
headers: {'X-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({intent: 'company_default'})
};
fetch('https://partner.urbanora.fr/v1/contacts/find', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"job_id": "<string>",
"status": "accepted",
"results": [
{
"kind": "establishment",
"mode": "sync",
"reason": "<string>",
"user_message": "<string>",
"identity_key": "<string>",
"job_id": "<string>",
"channels": [
{
"type": "<string>",
"state": "<string>",
"visibility": "<string>",
"reliability": "<string>",
"value": "<string>",
"match_confidence": "<string>"
}
],
"requested_channels": [
"<string>"
]
}
]
}{
"error": {
"code": "<string>",
"message": "<string>"
},
"request_id": "<string>"
}{
"error": {
"code": "<string>",
"message": "<string>"
},
"request_id": "<string>"
}{
"error": {
"code": "<string>",
"message": "<string>"
},
"request_id": "<string>"
}{
"error": {
"code": "<string>",
"message": "<string>"
},
"request_id": "<string>"
}contacts
Rechercher un contact joignable
Recherche asynchrone (waterfall interne). Facturé uniquement si un canal exploitable est livré. Échec = 0 €. Dédupliqué sur la période via le ledger. Header Idempotency-Key requis (rejeu 24 h).
POST
/
v1
/
contacts
/
find
Rechercher un contact joignable
curl --request POST \
--url https://partner.urbanora.fr/v1/contacts/find \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"intent": "company_default"
}
'const options = {
method: 'POST',
headers: {'X-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({intent: 'company_default'})
};
fetch('https://partner.urbanora.fr/v1/contacts/find', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"job_id": "<string>",
"status": "accepted",
"results": [
{
"kind": "establishment",
"mode": "sync",
"reason": "<string>",
"user_message": "<string>",
"identity_key": "<string>",
"job_id": "<string>",
"channels": [
{
"type": "<string>",
"state": "<string>",
"visibility": "<string>",
"reliability": "<string>",
"value": "<string>",
"match_confidence": "<string>"
}
],
"requested_channels": [
"<string>"
]
}
]
}{
"error": {
"code": "<string>",
"message": "<string>"
},
"request_id": "<string>"
}{
"error": {
"code": "<string>",
"message": "<string>"
},
"request_id": "<string>"
}{
"error": {
"code": "<string>",
"message": "<string>"
},
"request_id": "<string>"
}{
"error": {
"code": "<string>",
"message": "<string>"
},
"request_id": "<string>"
}Autorisations
Clé API partenaire (upk_live_… / upk_test_…). Alias MCP : Authorization: Bearer upk_….
En-têtes
Clé d'idempotence. Requise. Rejeu de la réponse pendant 24 h.
Corps
application/json
Options disponibles:
company_default, person Show child attributes
Show child attributes
Options disponibles:
work_email, personal_email, linkedin, mobile ⌘I