Odoo 19.0 Community · Persistent

resource.resource: fields, relations and API

The resource.resource model ("Resources") is a persistent model declared by the Resource module, then extended by 4 other modules. It exposes 30 fields, 24 of them declared directly on the model; 4 fields from other models point to it. Below you will find every field with its technical name, type, label and relations, followed by an Odoo 19 JSON-2 API call.

Model identity

Technical name
resource.resource
Label
Resources
Type
Persistent (models.Model)
SQL table
resource_resource
Origin module
Resource (resource)
Extended by
resource_mail, hr, hr_holidays, hr_skills
Default order (_order)
name

Model fields

24 own fields, 0 inherited from mixins and 6 automatic ORM fields. Click a name to get a direct link to that field.

30 of 30 fields shown

Technical nameLabelTypeDetails
activeActive

If the active field is set to False, it will allow you to hide the resource record without removing it.

boolean
avatar_128Avatar 128image
computed
calendar_idWorking Time

Define the working schedule of the resource. If not set, the resource will have fully flexible working hours.

many2one
colorColorinteger

added by Resource Mail (resource_mail)

company_idCompanymany2one
department_idDepartmentmany2one
computed

added by Employees (hr)

emailEmailchar

related: user_id.email

employee_idEmployeeone2many

inverse: resource_id

added by Employees (hr)

employee_skill_idsEmployee Skillone2many

related: employee_id.employee_skill_ids

added by Skills Management (hr_skills)

hr_icon_displayHr Icon Displayselection

related: employee_id.hr_icon_display

added by Employees (hr)

im_statusIm Statuschar

related: user_id.im_status

added by Resource Mail (resource_mail)

job_titleJob Titlechar
computed

added by Employees (hr)

leave_date_toLeave Date Todate

related: user_id.leave_date_to

added by Time Off (hr_holidays)

nameNamechar
required
phonePhonechar

related: user_id.phone

resource_typeTypeselection
required

Values: user (Human), material (Material)

shareShareboolean

related: user_id.share

show_hr_icon_displayShow Hr Icon Displayboolean

related: employee_id.show_hr_icon_display

added by Employees (hr)

time_efficiencyEfficiency Factor

This field is used to calculate the expected duration of a work order at this work center. For example, if a work order takes one hour and the efficiency factor is 100%, then the expected duration will be one hour. If the efficiency factor is 200%, however the expected duration will be 30 minutes.

float
required
tzTimezoneselection
required

Values computed at runtime

user_idUser

Related user name for the resource to manage its access.

many2one
work_emailWork Emailchar

related: employee_id.work_email

added by Employees (hr)

work_location_idWork Locationmany2one

related: employee_id.work_location_id

added by Employees (hr)

work_phoneWork Phonechar

related: employee_id.work_phone

added by Employees (hr)

create_dateCreated ondatetime
read-onlyautomatic
create_uidCreated bymany2one
read-onlyautomatic
display_nameDisplay Namechar
read-onlycomputedautomatic
idIDinteger
read-onlyautomatic
write_dateLast Updated ondatetime
read-onlyautomatic
write_uidLast Updated bymany2one
read-onlyautomatic

Relations

Models linked from this model

Fields of other models pointing here

Reading this model through the API

Odoo 19 JSON-2 API call reading the first five records with real fields of the model. Replace the instance, database and API key with your own.

curl
curl -X POST "https://your-instance.odoo.com/json/2/resource.resource/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: your-db" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["name","resource_type","time_efficiency","tz","calendar_id"],"limit":5}'
Python (requests)
import requests

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

res = requests.post(
    f"{BASE_URL}/resource.resource/search_read",
    headers=headers,
    json={"domain": [], "fields": ["name","resource_type","time_efficiency","tz","calendar_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())
  • External API access requires Odoo's Custom plan.
  • XML-RPC and JSON-RPC will be removed in Odoo 22 (fall 2028): use JSON-2.
  • The access rights and record rules of the key's user apply.

Cite this tool

Writing a tutorial, internal documentation or a forum answer? Copy this link to send your readers to the up-to-date reference.

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

Sources

Data verified on September 23, 2026 · Odoo 19.0 Community

Have an Odoo project, or want to put your ERP to work with AI? Let's talk

Implementation, custom module development, connecting Claude or ChatGPT to your data: tell us about your context and we will reply within 24 business hours.