Odoo 19.0 Community · Persistant

crm.lead : champs, relations et API

Le modèle crm.lead (« Piste ») est un modèle persistant déclaré par le module CRM, puis enrichi par 13 autres modules. Il expose 134 champs, dont 95 déclarés directement sur le modèle ; 15 champs d'autres modèles pointent vers lui. Retrouvez ci-dessous chaque champ avec son nom technique, son type, son libellé français et ses relations, puis un exemple d'appel à l'API JSON-2 d'Odoo 19.

Fiche d'identité

Nom technique
crm.lead
Libellé
Piste
Type
Persistant (models.Model)
Table SQL
crm_lead
Module d'origine
CRM (crm)
Étendu par
iap_crm, crm_iap_enrich, crm_iap_mine, crm_livechat, crm_mail_plugin, event_crm, sale_crm, mass_mailing_crm, survey_crm, website_crm, website_crm_iap_reveal, website_crm_livechat, website_crm_partner_assign
Tri par défaut (_order)
priority desc, id desc
Hérite de (mixins)
mail.thread.ccmail.thread.blacklistmail.thread.phonemail.activity.mixinutm.mixinformat.address.mixinmail.tracking.duration.mixin

Champs du modèle

95 champs propres, 33 hérités des mixins et 6 champs automatiques de l'ORM. Cliquez sur un nom pour obtenir le lien direct vers le champ.

134 champs affichés sur 134

Nom techniqueLibelléTypeDétails
activeActifboolean
automated_probabilityProbabilité automatiséefloat
lecture seulecalculé, stocké
calendar_event_idsRéunionsone2many

inverse : opportunity_id

campaign_idCampagnemany2one
cityVillechar
calculé, stocké
colorCouleurinteger
commercial_partner_idSociété clientemany2one
calculé
company_currencyDevisemany2one
calculé
company_idSociétémany2one
calculé, stocké
contact_nameNom du contactchar
calculé, stocké
country_idPaysmany2one
calculé, stocké
date_automation_lastDernière actiondatetime
lecture seule
date_closedDate de clôturedatetime
lecture seule
date_conversionDate de conversiondatetime
lecture seule
date_deadlineDate de clôture prévue

Estimation de la date à laquelle l'opportunité sera gagnée.

date
date_last_stage_updateDernière mise à jour de l'étapedatetime
lecture seulecalculé, stocké
date_openDate d'attributiondatetime
lecture seulecalculé, stocké
date_partner_assignDate d'assignation du partenaire

Dernière date à laquelle ce cas a été transmis/assigné à un partenaire

date
calculé, stocké

ajouté par Revendeurs (website_crm_partner_assign)

day_closeJours pour clôturerfloat
calculé, stocké
day_openJours pour assignerfloat
calculé, stocké
descriptionNoteshtml
duplicate_lead_countNombre de pistes potentiellement dupliquéesinteger
calculé
duplicate_lead_idsPiste potentiellement dupliquéemany2many
calculé
email_domain_criterionCritère du domaine de l'e-mailchar
calculé, stocké
email_fromE-mailchar
calculé, stocké
email_normalizedEmail Normalizedchar
email_stateQualité de l'e-mailselection
calculé, stocké

Valeurs : correct (Bonne réponse), incorrect (Mauvaise réponse)

event_idEvénement source

Événement générant la règle qui a créé cette piste

many2one

ajouté par Événement CRM (event_crm)

event_lead_rule_idRègle d'inscription

Règle qui a créé cette piste

many2one

ajouté par Événement CRM (event_crm)

expected_revenueRevenu attendumonetary
functionPostechar
calculé, stocké
iap_enrich_doneEnrichissement effectué

Si le service IAP pour l'enrichissement des pistes à partir de l'e-mail a été effectué pour cette piste.

boolean

ajouté par Enrichissement de pistes (crm_iap_enrich)

is_automated_probabilityEst une probabilité automatisée ?boolean
calculé
is_partner_visibleEst un partenaire visibleboolean
calculé
lang_active_countNombre de langues activesinteger
calculé
lang_codeLang Codechar

related : lang_id.code

lang_idLanguemany2one
calculé, stocké
lead_mining_request_idDemande de prospection de pistesmany2one

ajouté par Génération de pistes (crm_iap_mine)

lead_propertiesPropriétésproperties
lost_reason_idMotif de pertemany2one
medium_idMédiummany2one
meeting_display_dateDate d'affichage de la réuniondate
calculé
meeting_display_labelÉtiquette d'affichage de la réunionchar
calculé
nameOpportunitéchar
requiscalculé, stocké
order_idsCommandesone2many

inverse : opportunity_id

ajouté par Opportunité de devis (sale_crm)

origin_channel_idLive Chat à l'origine de la création de la pistemany2one
lecture seule

ajouté par Live Chat CRM (crm_livechat)

origin_survey_idSondagemany2one

ajouté par Sondage CRM (survey_crm)

partner_assigned_idPartenaire assignémany2one

ajouté par Revendeurs (website_crm_partner_assign)

partner_declined_idsPartenaire pas intéressémany2many

ajouté par Revendeurs (website_crm_partner_assign)

partner_email_updateL'e-mail du partenaire sera mis à jourboolean
calculé
partner_idContact

Partenaire lié (optionnel). Généralement créé en convertissant la piste. Vous pouvez trouver un partenaire par son Nom, TIN, e-mail ou Référence Interne.

many2one
partner_is_blacklistedLe partenaire est sur liste noireboolean
lecture seule

related : partner_id.is_blacklisted

partner_latitudeLatitudefloat

ajouté par Revendeurs (website_crm_partner_assign)

partner_longitudeLongitudefloat

ajouté par Revendeurs (website_crm_partner_assign)

partner_nameNom de la société

Le nom de la future société partenaire qui sera créée quand la piste sera convertie en opportunité

char
calculé, stocké
partner_phone_updateLe numéro de téléphone du partenaire sera mis à jourboolean
calculé
phoneTéléphonechar
calculé, stocké
phone_sanitizedPhone Sanitizedchar
phone_stateQualité du téléphoneselection
calculé, stocké

Valeurs : correct (Bonne réponse), incorrect (Mauvaise réponse)

priorityPrioritéselection

Valeurs : 0 (Basse), 1 (Médium), 2 (Haute), 3 (Très élevé)

probabilityProbabilitéfloat
calculé, stocké
prorated_revenueRevenu au proratamonetary
calculé, stocké
quotation_countNombre de devisinteger
calculé

ajouté par Opportunité de devis (sale_crm)

recurring_planRécurrencemany2one
recurring_revenueRevenus récurrentsmonetary
recurring_revenue_monthlyMRR attendumonetary
calculé, stocké
recurring_revenue_monthly_proratedMRR au proratamonetary
calculé, stocké
recurring_revenue_proratedRevenus récurrents proratisésmonetary
calculé, stocké
referredRecommandé parchar
registration_count# Inscriptions

Compteur pour les enregistrements liés à cette piste

integer
calculé

ajouté par Événement CRM (event_crm)

registration_idsInscription source

Les inscriptions déclenchent la règle qui a créé cette piste

many2many

ajouté par Événement CRM (event_crm)

reveal_iap_creditsCrédits IAPinteger

ajouté par Génération de pistes à partir de visites du site web (website_crm_iap_reveal)

reveal_idAfficher l'identifiantchar

ajouté par IAP / CRM (iap_crm)

reveal_ipAdresse IPchar

ajouté par Génération de pistes à partir de visites du site web (website_crm_iap_reveal)

reveal_rule_idRègle de génération de pistesmany2one

ajouté par Génération de pistes à partir de visites du site web (website_crm_iap_reveal)

sale_amount_totalTotal des commandes

Total hors taxes pour les commandes confirmées

monetary
calculé

ajouté par Opportunité de devis (sale_crm)

sale_order_countNombre de commandes clientsinteger
calculé

ajouté par Opportunité de devis (sale_crm)

show_enrich_buttonAutoriser l'enrichissement manuelboolean
calculé

ajouté par Enrichissement de pistes (crm_iap_enrich)

source_idSourcemany2one
stage_idÉtapemany2one
calculé, stocké
stage_id_colorStage Colorinteger

related : stage_id.color

state_idStatutmany2one
calculé, stocké
streetRuechar
calculé, stocké
street2Rue 2char
calculé, stocké
tag_idsÉtiquettes

Classez et analysez vos catégories de pistes/opportunités. Exemples : Formation, Service

many2many
team_idÉquipe commercialemany2one
calculé, stocké
typeTypeselection
requis

Valeurs : lead (Piste), opportunity (Opportunité)

user_company_idsEntreprise utilisatrice

UX : Limiter à la société principale ou à tous si aucune entreprise

many2many
calculé
user_idVendeurmany2one
visitor_idsVisiteurs webmany2many

ajouté par Formulaire de contact (website_crm)

visitor_page_count# Pages Vuesinteger
calculé

ajouté par Formulaire de contact (website_crm)

visitor_sessions_count# Sessionsinteger
calculé

ajouté par Piste des sessions de LiveChat (website_crm_livechat)

websiteSite Web

Site web du contact

char
calculé, stocké
won_statusGagnée/Perdueselection
calculé, stocké

Valeurs : won (Gagné), lost (Perdu), pending (En attente)

zipCode postalchar
calculé, stocké
activity_calendar_event_idActivité suivante de l'événement du calendriermany2one
calculé

hérité de mail.activity.mixin

activity_date_deadlineDate limite de l'activité à venirdate
lecture seulecalculé

hérité de mail.activity.mixin

activity_exception_decorationIndicateur d’exception d’activité

Type d'activité d'exception enregistrée.

selection
calculé

Valeurs : warning (Alerte), danger (Erreur)

hérité de mail.activity.mixin

activity_exception_iconIcône

Icône pour indiquer une activité d'exception.

char
calculé

hérité de mail.activity.mixin

activity_idsActivitésone2many

inverse : res_id

hérité de mail.activity.mixin

activity_stateStatut de l'activité

Status based on activities Overdue: Due date is already passed Today: Activity date is today Planned: Future activities.

selection
calculé

Valeurs : overdue (En retard), today (Aujourd'hui), planned (Planifié)

hérité de mail.activity.mixin

activity_summaryRésumé de l'activité suivantechar

related : activity_ids.summary

hérité de mail.activity.mixin

activity_type_iconIcône de type d'activitéchar

related : activity_ids.icon

hérité de mail.activity.mixin

activity_type_idType d'activités à venirmany2one

related : activity_ids.activity_type_id

hérité de mail.activity.mixin

activity_user_idUtilisateur responsablemany2one
lecture seulecalculé

hérité de mail.activity.mixin

duration_trackingDurée du statut

JSON qui associe les identifiants d'un champ many2one aux secondes passées

json
calculé

hérité de mail.tracking.duration.mixin

email_ccE-mail ccchar

hérité de mail.thread.cc

has_messageA un messageboolean
calculé

hérité de mail.thread

is_blacklistedListe noire

Si l'adresse e-mail est sur liste noire, le contact ne recevra plus d'e-mail marketing d'aucune liste.

boolean
calculé

hérité de mail.thread.blacklist

is_rottingInactivitéboolean
calculé

hérité de mail.tracking.duration.mixin

message_attachment_countNombre de pièces jointesinteger
calculé

hérité de mail.thread

message_bounceRebond

Le compteur du nombre de mails rebondis pour ce contact

integer

hérité de mail.thread.blacklist

message_follower_idsAbonnésone2many

inverse : res_id

hérité de mail.thread

message_has_errorErreur d'envoi du message

Si coché, certains messages ont une erreur de livraison.

boolean
calculé

hérité de mail.thread

message_has_error_counterNombre d'erreurs

Nombre de messages avec des erreurs d'envoi

integer
calculé

hérité de mail.thread

message_has_sms_errorErreur d'envoi SMS

Si coché, certains messages ont une erreur de livraison.

boolean
calculé

hérité de mail.thread

message_idsMessagesone2many

inverse : res_id

hérité de mail.thread

message_is_followerEst un abonnéboolean
calculé

hérité de mail.thread

message_needactionNécessite une action

Si coché, de nouveaux messages demandent votre attention.

boolean
calculé

hérité de mail.thread

message_needaction_counterNombre d'actions

Nombre de messages nécessitant une action

integer
calculé

hérité de mail.thread

message_partner_idsAbonnés (Partenaires)many2many
calculé

hérité de mail.thread

my_activity_date_deadlineÉchéance de mon activitédate
lecture seulecalculé

hérité de mail.activity.mixin

phone_blacklistedLe téléphone sur liste noire est fixe

Indicates if a blacklisted sanitized phone number is a phone number. Helps distinguish which number is blacklisted when there is both a mobile and phone field in a model.

boolean
calculé

hérité de mail.thread.phone

phone_sanitized_blacklistedTéléphone sur liste noire

Si le numéro de téléphone nettoyé est sur liste noire, le contact ne recevra plus de campagnes de mail, d'aucunes listes.

boolean
calculé

hérité de mail.thread.phone

rating_idsÉvaluationsone2many

inverse : res_id

hérité de mail.thread

rotting_daysJours d’inactivité

Nombre de jours depuis la dernière mise à jour de cette ressource

integer
calculé

hérité de mail.tracking.duration.mixin

website_message_idsMessages du site web

Historique de communication du site web

one2many

inverse : res_id

hérité de mail.thread

create_dateCréé ledatetime
lecture seuleautomatique
create_uidCréé parmany2one
lecture seuleautomatique
display_nameNom affichéchar
lecture seulecalculéautomatique
idIDinteger
lecture seuleautomatique
write_dateDernière mise à jour ledatetime
lecture seuleautomatique
write_uidDernière mise à jour parmany2one
lecture seuleautomatique

Relations

Modèles liés depuis ce modèle

Champs d'autres modèles qui pointent ici

Lire ce modèle par l'API

Exemple d'appel à l'API JSON-2 d'Odoo 19 : lecture des cinq premiers enregistrements avec des champs réels du modèle. Remplacez l'instance, la base et la clé API par les vôtres.

curl
curl -X POST "https://votre-instance.odoo.com/json/2/crm.lead/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: votre-base" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["name","type","campaign_id","company_id","country_id"],"limit":5}'
Python (requests)
import requests

BASE_URL = "https://votre-instance.odoo.com/json/2"
headers = {"Authorization": f"bearer {API_KEY}", "X-Odoo-Database": "votre-base"}

res = requests.post(
    f"{BASE_URL}/crm.lead/search_read",
    headers=headers,
    json={"domain": [], "fields": ["name","type","campaign_id","company_id","country_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())
  • L'accès à l'API externe est réservé à la formule Custom d'Odoo.
  • XML-RPC et JSON-RPC seront retirés dans Odoo 22 (automne 2028) : préférez JSON-2.
  • Les droits d'accès et règles d'enregistrement de l'utilisateur de la clé s'appliquent.

Citer cet outil

Vous rédigez un tutoriel, une documentation interne ou une réponse sur un forum ? Copiez ce lien pour renvoyer vos lecteurs vers la fiche à jour.

<a href="https://aidoo.ai/fr/outils/explorateur-modeles-odoo/crm-lead">crm.lead (Odoo 19.0)</a>

Sources

Données vérifiées le 23 septembre 2026 · Odoo 19.0 Community

Vous avez un projet Odoo ou souhaitez exploiter votre ERP avec l'IA ? Échangeons

Intégration, développement de modules, connexion de Claude ou ChatGPT à vos données : décrivez-nous votre contexte, nous vous répondons sous 24 heures ouvrées.