Odoo 19.0 Community · Persistente

hr.applicant: campos, relaciones y API

El modelo hr.applicant («Candidato») es un modelo persistente declarado por el módulo Reclutamiento y ampliado por 4 módulos más. Expone 109 campos, 69 de ellos declarados directamente en el modelo; 11 campos de otros modelos apuntan a él. A continuación encontrará cada campo con su nombre técnico, tipo, etiqueta en español y relaciones, y un ejemplo de llamada a la API JSON-2 de Odoo 19.

Ficha de identidad

Nombre técnico
hr.applicant
Etiqueta
Candidato
Tipo
Persistente (models.Model)
Tabla SQL
hr_applicant
Módulo de origen
Reclutamiento (hr_recruitment)
Ampliado por
hr_recruitment_skills, hr_recruitment_sms, hr_recruitment_survey, website_hr_recruitment
Orden por defecto (_order)
priority desc, sequence, id desc
Campo mostrado (_rec_name)
partner_name
Hereda de (mixins)
mail.thread.ccmail.thread.main.attachmentmail.thread.blacklistmail.thread.phonemail.activity.mixinutm.mixinmail.tracking.duration.mixin

Campos del modelo

69 campos propios, 35 heredados de mixins y 5 campos automáticos del ORM. Haga clic en un nombre para obtener el enlace directo al campo.

109 de 109 campos mostrados

Nombre técnicoEtiquetaTipoDetalles
activeActivo

Si el campo activo es False, le permitirá ocultar el caso sin eliminarlo.

boolean
applicant_notesNotas del solicitantehtml
applicant_propertiesPropiedadesproperties
applicant_skill_idsHabilidadesone2many

inverso: applicant_id

añadido por Reclutamiento - Gestión de habilidades (hr_recruitment_skills)

application_countNúmero de solicitudes

Solicitudes con el mismo correo electrónico o número de teléfono

integer
calculado
application_statusEstado de la solicitudselection
calculado

Valores: ongoing (En curso), hired (Contratado), refused (Rechazado), archived (Archivado)

attachment_idsArchivos adjuntosone2many

inverso: res_id

attachment_numberNúmero de archivos adjuntosinteger
calculado
availabilityDisponibilidad

La fecha en que el candidato estará disponible para empezar a trabajar

date
campaign_idCampañamany2one
categ_idsEtiquetasmany2many
colorÍndice de Coloresinteger
company_idCompañíamany2one
calculado, almacenado
create_dateAplicado eldatetime
solo lectura
current_applicant_skill_idsHabilidades actuales del solicitanteone2many
calculado

inverso: applicant_id

añadido por Reclutamiento - Gestión de habilidades (hr_recruitment_skills)

date_closedFecha de contratacióndatetime
calculado, almacenado
date_last_stage_updateÚltima actualización de la etapadatetime
date_openAsignadodatetime
solo lectura
day_closeDías para cerrarfloat
calculado
day_openDías para abrirfloat
calculado
delay_closeTiempo para el cierre

Número de días para cerrar

float
solo lecturacalculado, almacenado
department_idDepartamentomany2one
calculado, almacenado
email_fromCorreo electrónicochar
calculado, almacenado
email_normalizedEmail Normalizedchar
emp_is_activeEmpleado activoboolean

related: employee_id.active

employee_idEmpleado

Empleado vinculado con el candidato.

many2one
employee_nameNombre del empleadochar

related: employee_id.name

interviewer_idsEntrevistadoresmany2many
is_applicant_in_pool¿El candidato está en la reserva de talentos?boolean
calculado
is_pool_applicant¿Es un candidato de la reserva de talentos?boolean
calculado
job_idPuesto de trabajomany2one
→ hr.job
kanban_stateEstado de kanbanselection
obligatorio

Valores: normal (En proceso), done (Listo para la siguiente etapa), waiting (En espera), blocked (Bloqueado)

last_stage_idÚltima etapa

Etapa del candidato antes de estar en la etapa actual. Usado para el análisis de los casos perdidos.

many2one
legend_blockedKanban bloqueadochar

related: stage_id.legend_blocked

legend_doneKanban válidochar

related: stage_id.legend_done

legend_normalKanban en cursochar

related: stage_id.legend_normal

legend_waitingKanban en esperachar

related: stage_id.legend_waiting

linkedin_profilePerfil de LinkedInchar
matching_scorePorcentaje de coincidenciainteger
calculado

añadido por Reclutamiento - Gestión de habilidades (hr_recruitment_skills)

matching_skill_idsHabilidades coincidentesmany2many
calculado

añadido por Reclutamiento - Gestión de habilidades (hr_recruitment_skills)

medium_idMedio

Muestra cómo se comunicó el solicitante, por ejemplo, por correo electrónico, LinkedIn, sitio web, etc.

many2one
meeting_display_dateMostrar fecha de la reunióndate
calculado
meeting_display_textTexto de reunión mostradochar
calculado
meeting_idsReunionesone2many

inverso: applicant_id

missing_skill_idsHabilidades faltantesmany2many
calculado

añadido por Reclutamiento - Gestión de habilidades (hr_recruitment_skills)

partner_idContactomany2one
partner_nameNombre del candidatochar
partner_phoneTeléfonochar
calculado, almacenado
partner_phone_sanitizedNúmero de teléfono depuradochar
calculado, almacenado
pool_applicant_idCandidato de la reserva de talentosmany2one
priorityEvaluaciónselection

Valores: 0 (Normal), 1 (Bueno), 2 (Muy bueno), 3 (Excelente)

probabilityProbabilidadfloat
refuse_dateFecha de rechazodatetime
refuse_reason_idRazón del rechazomany2one
response_idsRespuestasone2many

inverso: applicant_id

añadido por Formulario de entrevista de reclutamiento de recursos humanos (hr_recruitment_survey)

salary_expectedPrevisto

Salario esperado por el candidato

float
salary_expected_extraSalario adicional esperado

Salario esperado por el candidato, con ventajas adicionales

char
salary_proposedPropuesto

Salario propuesto por la organización

float
salary_proposed_extraSalario adicional propuesto

Salario propuesto por la organización, con ventajas adicionales

char
sequenceSecuenciainteger
skill_idsHabilidadmany2many
calculado, almacenado

añadido por Reclutamiento - Gestión de habilidades (hr_recruitment_skills)

source_idOrigenmany2one
stage_idEtapamany2one
calculado, almacenado
survey_idEncuestamany2one
solo lectura

related: job_id.survey_id

añadido por Formulario de entrevista de reclutamiento de recursos humanos (hr_recruitment_survey)

talent_pool_countNúmero de reservas de talentosinteger
calculado
talent_pool_idsReservas de talentosmany2many
type_idTítulomany2one
user_emailCorreo electrónico del usuariochar
solo lectura

related: user_id.email

user_idReclutadormany2one
calculado, almacenado
activity_calendar_event_idSiguiente evento en el calendario de actividades.many2one
calculado

heredado de mail.activity.mixin

activity_date_deadlineFecha límite de la siguiente actividaddate
solo lecturacalculado

heredado de mail.activity.mixin

activity_exception_decorationDecoración de Actividad de Excepción

Tipo de actividad de excepción en el registro.

selection
calculado

Valores: warning (Alerta), danger (Error)

heredado de mail.activity.mixin

activity_exception_iconIcono

Icono para indicar una actividad de excepción.

char
calculado

heredado de mail.activity.mixin

activity_idsActividadesone2many

inverso: res_id

heredado de mail.activity.mixin

activity_stateEstado de la actividad

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

selection
calculado

Valores: overdue (De retraso), today (Hoy), planned (Planificado)

heredado de mail.activity.mixin

activity_summaryResumen de la siguiente actividadchar

related: activity_ids.summary

heredado de mail.activity.mixin

activity_type_iconIcono de tipo de actividadchar

related: activity_ids.icon

heredado de mail.activity.mixin

activity_type_idTipo de la siguiente actividadmany2one

related: activity_ids.activity_type_id

heredado de mail.activity.mixin

activity_user_idUsuario responsablemany2one
solo lecturacalculado

heredado de mail.activity.mixin

duration_trackingTiempo del estado

JSON que mapea IDs de un campo many2one a segundos utilizados

json
calculado

heredado de mail.tracking.duration.mixin

email_ccCC del correo electrónicochar

heredado de mail.thread.cc

has_messageTiene un mensajeboolean
calculado

heredado de mail.thread

is_blacklistedLista negra

Si la dirección de correo electrónico está en la lista negra, el contacto ya no recibirá más envíos masivos desde ninguna lista

boolean
calculado

heredado de mail.thread.blacklist

is_rottingEn espera/estancadoboolean
calculado

heredado de mail.tracking.duration.mixin

message_attachment_countNúmero de archivos adjuntosinteger
calculado

heredado de mail.thread

message_bounceRebotado

Contador del número de correos electrónicos rebotados de este contacto

integer

heredado de mail.thread.blacklist

message_follower_idsSeguidoresone2many

inverso: res_id

heredado de mail.thread

message_has_errorError de envío de mensaje

Si está marcada, algunos mensajes tienen error de envío.

boolean
calculado

heredado de mail.thread

message_has_error_counterNúmero de errores

Número de mensajes con error de envío

integer
calculado

heredado de mail.thread

message_has_sms_errorError de envío del SMS

Si está marcada, algunos mensajes tienen error de envío.

boolean
calculado

heredado de mail.thread

message_idsMensajesone2many

inverso: res_id

heredado de mail.thread

message_is_followerEs un seguidorboolean
calculado

heredado de mail.thread

message_main_attachment_idArchivo adjunto principalmany2one

heredado de mail.thread.main.attachment

message_needactionAcción requerida

Si está marcada, hay nuevos mensajes que requieren su atención.

boolean
calculado

heredado de mail.thread

message_needaction_counterNúmero de acciones

Número de mensajes que requieren una acción

integer
calculado

heredado de mail.thread

message_partner_idsSeguidores (Contactos)many2many
calculado

heredado de mail.thread

my_activity_date_deadlineFecha límite de mi actividaddate
solo lecturacalculado

heredado de mail.activity.mixin

phone_blacklistedEl teléfono en la lista negra es un teléfono

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
calculado

heredado de mail.thread.phone

phone_sanitizedNúmero depurado

Campo utilizado para almacenar el número de teléfono depurado. Ayuda a acelerar las búsquedas y las comparaciones.

char
calculado, almacenado

heredado de mail.thread.phone

phone_sanitized_blacklistedTeléfono en la lista negra

Si el teléfono está en la lista negra, el contacto ya no recibirá correo masivo de sms de ninguna lista.

boolean
calculado

heredado de mail.thread.phone

rating_idsCalificacionesone2many

inverso: res_id

heredado de mail.thread

rotting_daysDías en espera

Número de días desde la última actualización de este recurso

integer
calculado

heredado de mail.tracking.duration.mixin

website_message_idsMensajes del sitio web

Historial de comunicación del sitio web

one2many

inverso: res_id

heredado de mail.thread

create_uidCreado pormany2one
solo lecturaautomático
display_nameNombre mostradochar
solo lecturacalculadoautomático
idIDinteger
solo lecturaautomático
write_dateÚltima actualización eldatetime
solo lecturaautomático
write_uidÚltima actualización pormany2one
solo lecturaautomático

Relaciones

Modelos enlazados desde este modelo

Campos de otros modelos que apuntan aquí

Leer este modelo por la API

Ejemplo de llamada a la API JSON-2 de Odoo 19: lectura de los cinco primeros registros con campos reales del modelo. Sustituya la instancia, la base y la clave API por las suyas.

curl
curl -X POST "https://su-instancia.odoo.com/json/2/hr.applicant/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: su-base" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["partner_name","kanban_state","campaign_id","company_id","department_id"],"limit":5}'
Python (requests)
import requests

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

res = requests.post(
    f"{BASE_URL}/hr.applicant/search_read",
    headers=headers,
    json={"domain": [], "fields": ["partner_name","kanban_state","campaign_id","company_id","department_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())
  • El acceso a la API externa está reservado al plan Custom de Odoo.
  • XML-RPC y JSON-RPC se retirarán en Odoo 22 (otoño de 2028): use JSON-2.
  • Se aplican los permisos de acceso y las reglas de registro del usuario de la clave.

Citar esta herramienta

¿Escribe un tutorial, una documentación interna o una respuesta en un foro? Copie este enlace para dirigir a sus lectores a la ficha actualizada.

<a href="https://aidoo.ai/es/outils/explorateur-modeles-odoo/hr-applicant">hr.applicant (Odoo 19.0)</a>

Fuentes

Datos verificados el 23 de septiembre de 2026 · Odoo 19.0 Community

¿Tiene un proyecto Odoo o quiere aprovechar su ERP con la IA? Hablemos

Implantación, desarrollo de módulos, conexión de Claude o ChatGPT a sus datos: cuéntenos su contexto y le responderemos en 24 horas laborables.