website.visitor : champs, relations et API
Le modèle website.visitor (« Visiteur du site web ») est un modèle persistant déclaré par le module Site Web, puis enrichi par 9 autres modules. Il expose 46 champs, dont 41 déclarés directement sur le modèle ; 6 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 20.
Fiche d'identité
- Nom technique
website.visitor- Libellé
- Visiteur du site web
- Type
- Persistant (models.Model)
- Table SQL
website_visitor- Module d'origine
- Site Web (
website) - Étendu par
- website_slides, website_event, website_event_track, website_sale, website_blog, website_crm, website_livechat, website_sms, website_crm_sms
- Tri par défaut (_order)
id DESC
Champs du modèle
41 champs propres, 0 hérités des mixins et 5 champs automatiques de l'ORM. Cliquez sur un nom pour obtenir le lien direct vers le champ.
46 champs affichés sur 46
| Nom technique | Libellé | Type | Détails |
|---|---|---|---|
| access_token | Jeton d'accès | char | requis |
| blog_post_ids | Articles de blog | many2many | calculé ajouté par Blog ( |
| country_flag | Drapeau du pays | char | related : |
| country_id | Pays | many2one | lecture seule |
| create_date | Première connexion | datetime | lecture seule |
| current_livechat_agent_ids | Parlant avec | many2many | calculé ajouté par Website Live Chat ( |
| discuss_channel_ids | Canal pour les visiteurs du live chat | one2many | lecture seule inverse : ajouté par Website Live Chat ( |
char | calculé | ||
| event_ids | Événements | many2many | calculé ajouté par Événements ( |
| event_registered_ids | Événements enregistrés | many2many | calculé ajouté par Événements ( |
| event_registration_count | # Inscriptions | integer | calculé ajouté par Événements ( |
| event_registration_ids | Inscriptions à l'événement | one2many | inverse : ajouté par Événements ( |
| event_track_visitor_ids | Tracker les visiteurs | one2many | inverse : ajouté par Advanced Events ( |
| event_track_wishlisted_count | # Liste de souhaits | integer | calculé ajouté par Advanced Events ( |
| event_track_wishlisted_ids | Sessions ajoutées à une liste de souhaits | many2many | calculé ajouté par Advanced Events ( |
| is_connected | Est connecté ? Un visiteur est considéré comme connecté si sa dernière page a été consultée dans les 5 dernières minutes. | boolean | calculé |
| lang_id | Langue Langue du site Web lors de la création du visiteur | many2one→ res.lang | |
| last_connection_datetime | Dernière connexion Date d'affichage de la dernière page | datetime | lecture seule |
| last_visited_page_id | Dernière page visitée | many2one | calculé |
| lead_count | # Pistes | integer | calculé ajouté par Contact Form ( |
| lead_ids | Pistes | many2many→ crm.lead | ajouté par Contact Form ( |
| mobile | Mobile | char | calculé |
| name | Nom | char | related : |
| page_count | # Pages visitées Nombre total de pages suivies visitées | integer | calculé |
| page_ids | Pages visitées | many2many | calculé |
| partner_id | Contact Partenaire du dernier utilisateur connecté. | many2one | calculé, stocké |
| partner_image | Partner Image | binary | related : |
| product_count | Vues de produits Nombre total de produits consultés | integer | calculé ajouté par eCommerce ( |
| product_ids | Produits visités | many2many | calculé ajouté par eCommerce ( |
| session_count | # Sessions | integer | calculé ajouté par Website Live Chat ( |
| slide_channel_ids | Cours | many2many | calculé ajouté par eLearning ( |
| time_since_last_action | Dernière action Temps écoulé depuis la dernière vue de la page. Par exemple: il y a 2 minutes | char | calculé |
| timezone | Fuseau horaire | selection | Valeurs calculées dynamiquement |
| visit_count | # Visites Une nouvelle viste est considérée si la dernière connexion a eu lieu il y a plus de 8 heures. | integer | lecture seule |
| visitor_blog_post_count | Blog Post Views Total number of views on blog posts | integer | calculé ajouté par Blog ( |
| visitor_event_count | Event Views Total number of views on events | integer | calculé ajouté par Événements ( |
| visitor_page_count | Pages vues Nombre total de visites sur les pages surveillées | integer | calculé |
| visitor_product_count | Vues du produit Nombre total de vues sur des produits | integer | calculé ajouté par eCommerce ( |
| visitor_slide_channel_count | Course Views Total number of views on courses | integer | calculé ajouté par eLearning ( |
| website_id | Site Web | many2one→ website | lecture seule |
| website_track_ids | Historique des pages visitées | one2many | lecture seule inverse : |
| create_uid | Créé par | many2one | lecture seuleautomatique |
| display_name | Nom affiché | char | lecture seulecalculéautomatique |
| id | ID | integer | lecture seuleautomatique |
| write_date | Dernière mise à jour le | datetime | lecture seuleautomatique |
| write_uid | Dernière mise à jour par | many2one | lecture seuleautomatique |
Relations
Modèles liés depuis ce modèle
- blog.post : blog_post_ids
- crm.lead : lead_ids
- discuss.channel : discuss_channel_ids
- event.event : event_ids, event_registered_ids
- event.registration : event_registration_ids
- event.track : event_track_wishlisted_ids
- event.track.visitor : event_track_visitor_ids
- product.product : product_ids
- res.country : country_id
- res.lang : lang_id
- res.partner : current_livechat_agent_ids, partner_id
- slide.channel : slide_channel_ids
- website : website_id
- website.page : last_visited_page_id, page_ids
- website.track : website_track_ids
Champs d'autres modèles qui pointent ici
- crm.lead : visitor_ids
- discuss.channel : livechat_visitor_id
- event.registration : visitor_id
- event.track : wishlist_visitor_ids
- event.track.visitor : visitor_id
- website.track : visitor_id
Lire ce modèle par l'API
Exemple d'appel à l'API JSON-2 d'Odoo 20 : 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 -X POST "https://votre-instance.odoo.com/json/2/website.visitor/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: votre-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["name","access_token","country_id","lang_id","partner_id"],"limit":5}'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}/website.visitor/search_read",
headers=headers,
json={"domain": [], "fields": ["name","access_token","country_id","lang_id","partner_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/website-visitor">website.visitor (Odoo 20.0)</a>Sources
- Code source du modèle sur GitHub
- Documentation Odoo 20 : ORM API
- Documentation Odoo 20 : API externe JSON-2
Données vérifiées le 25 septembre 2026 · Odoo 20.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.