Odoo 20.0 Community · Persistent

resource.calendar.attendance: fields, relations and API

The resource.calendar.attendance model ("Work Detail") is a persistent model declared by the Resource module, then extended by 2 other modules. It exposes 27 fields, 21 of them declared directly on the model. Below you will find every field with its technical name, type, label and relations, followed by an Odoo 20 JSON-2 API call.

Model identity

Technical name
resource.calendar.attendance
Label
Work Detail
Type
Persistent (models.Model)
SQL table
resource_calendar_attendance
Origin module
Resource (resource)
Extended by
hr_work_entry, point_of_sale
Default order (_order)
sequence, date, dayofweek, hour_from
Inherits from (mixins)
pos.load.mixin

Model fields

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

27 of 27 fields shown

Technical nameLabelTypeDetails
allowed_work_entry_type_idsAllowed Work Entry Typemany2many
computed

added by Work Entries (hr_work_entry)

calendar_idResource's Calendarmany2one
required
calendar_typeCalendar Typeselection
read-only

related: calendar_id.calendar_type

colorColorinteger

related: work_entry_type_id.color

added by Work Entries (hr_work_entry)

dateDatedate
day_periodDay Periodselection
computed, stored

Values: morning (Morning), afternoon (Afternoon), full_day (Full Day)

dayofweekDay of Weekselection
requiredcomputed, stored

Values: 0 (Monday), 1 (Tuesday), 2 (Wednesday), 3 (Thursday), 4 (Friday), 5 (Saturday), 6 (Sunday)

display_codeDisplay Codechar

related: work_entry_type_id.display_code

added by Work Entries (hr_work_entry)

duration_basedDuration Basedboolean
computed, stored
duration_hoursHoursfloat
computed, stored
hour_fromWork from

Start and End time of working. A specific value of 24:00 is interpreted as 23:59:59.999999.

float
requiredcomputed, stored
hour_toWork tofloat
requiredcomputed, stored
recurrencyRecurrencyboolean
recurrency_countNumber of Repetitionsinteger
recurrency_end_typeRecurrence End Conditionselection

Values: forever (Forever), times (Occurrences), date (Until)

recurrency_excluded_occurencesRecurrency Excluded Occurencesjson
recurrency_intervalInterval

Number of days or weeks between each occurrence.

integer
recurrency_typeRecurrency Typeselection

Values: days (Days), weeks (Weeks)

recurrency_untilRecurrence End Datedate
computed, stored
sequenceSequence

Gives the sequence of this line when displaying the resource calendar.

integer
work_entry_type_idTime Typemany2one

added by Work Entries (hr_work_entry)

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

No Many2one or Many2many field of another model points to this model.

Reading this model through the API

Odoo 20 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.calendar.attendance/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: your-db" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["calendar_id","dayofweek","hour_from","hour_to","work_entry_type_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.calendar.attendance/search_read",
    headers=headers,
    json={"domain": [], "fields": ["calendar_id","dayofweek","hour_from","hour_to","work_entry_type_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-calendar-attendance">resource.calendar.attendance (Odoo 20.0)</a>

Sources

Data verified on September 25, 2026 · Odoo 20.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.