Odoo 19.0 Community · Persistent

snailmail.letter: fields, relations and API

The snailmail.letter model ("Snailmail Letter") is a persistent model declared by the Snail Mail module. It exposes 30 fields, 24 of them declared directly on the model; 1 field from other models points 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
snailmail.letter
Label
Snailmail Letter
Type
Persistent (models.Model)
SQL table
snailmail_letter
Origin module
Snail Mail (snailmail)

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
attachment_datasDocumentbinary

related: attachment_id.datas

attachment_fnameAttachment Filenamechar

related: attachment_id.name

attachment_idAttachmentmany2one
cityCitychar
colorColorboolean
company_idCompanymany2one
requiredread-only
country_idCountrymany2one
coverCover Pageboolean
duplexBoth sideboolean
error_codeErrorselection

Values computed at runtime

info_msgInformationhtml
message_idSnailmail Status Messagemany2one
modelModelchar
required
notification_idsNotificationsone2many

inverse: letter_id

partner_idRecipientmany2one
required
referenceRelated Recordchar
read-onlycomputed
report_templateOptional report to print and attachmany2one
res_idDocument IDinteger
required
stateStatus

When a letter is created, the status is 'Pending'. If the letter is correctly sent, the status goes in 'Sent', If not, it will got in state 'Error' and the error message will be displayed in the field 'Error Message'.

selection
requiredread-only

Values: pending (In Queue), sent (Sent), error (Error), canceled (Cancelled)

state_idStatemany2one
streetStreetchar
street2Street2char
user_idSent bymany2one
zipZipchar
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/snailmail.letter/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: your-db" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["company_id","model","partner_id","res_id","state"],"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}/snailmail.letter/search_read",
    headers=headers,
    json={"domain": [], "fields": ["company_id","model","partner_id","res_id","state"], "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/snailmail-letter">snailmail.letter (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.