2024 is the year of the connector - vote here

Explore the Odoo API data model

See how the various Odoo endpoints relate to each other, using our handy Entity Relationship Diagram

Pulling data from the Odoo API is only the first part of your reporting. You also need to understand the relationships between different endpoints - something that APIs typically fail to convey.

At SyncHub, we not only sync your Odoo API endpoints down into a reportable format, we also describe their relationships (e.g. in terms of foreign keys) so that you can quickly get a grasp of your data and how it fits together. This page is intended as technical documentation of these relationships.

Endpoints

Account

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
CompanyCurrencyID long Currency → ID -
CurrencyID long Currency → ID -
CompanyID long Company → ID -
RootID long - -
MessageIsFollower boolean - -
HasMessage boolean - -
MessageNeedaction boolean - -
MessageHasError boolean - -
AccountType string - -
Code string - -
Deprecated boolean - -
Used boolean - -
IncludeInitialBalance boolean - -
NonTrade boolean - -
InternalGroup string - -
DisplayName string - -
OpeningDebit decimal - -
OpeningBalance decimal - -
CurrentBalance decimal - -
RelatedTaxesAmount decimal - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Company

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
HasMessage boolean - -
MessageNeedaction boolean - -
MessageNeedactionCounter int - -
MessageHasError boolean - -
MessageHasErrorCounter int - -
MessageAttachmentCount int - -
Active boolean - -
ParentID long Company → ID -
RootID long Company → ID -
PartnerID long Company → ID -
CompanyDetails string - -
Logo string - -
LogoWeb string - -
UsesDefaultLogo boolean - -
CurrencyID long - -
CountryID long - -
Street string - -
Street2 string - -
Zip string - -
City string - -
StateID long - -
CountryCode string - -
Email string - -
Phone string - -
Mobile string - -
Website string - -
PrimaryColor string - -
SecondaryColor string - -
DisplayName string - -
AliasDomainName string - -
DefaultCashDifferenceIncomeAccountID long Account → ID -
DefaultCashDifferenceExpenseAccountID long Account → ID -
AccountJournalSuspenseAccountID long Account → ID -
AccountJournalPaymentDebitAccountID long Account → ID -
AccountJournalPaymentCreditAccountID long Account → ID -
AccountJournalEarlyPayDiscountGainAccountID long Account → ID -
AccountJournalEarlyPayDiscountLossAccountID long Account → ID -
IncomeCurrencyExchangeAccountID long Account → ID -
ExpenseCurrencyExchangeAccountID long Account → ID -
AccountSaleTaxID long Tax → ID -
AccountPurchaseTaxID long Tax → ID -
AccountDefaultPosReceivableAccountID long Account → ID -
AccountOpeningDate datetime - -
TransferAccountCodePrefix string - -
AccountFiscalCountryID long - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Contact

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
Active boolean - -
IsSeoOptimized boolean - -
IsPublished boolean - -
CanPublish boolean - -
WebsiteMetaTitle string - -
WebsiteMetaDescription string - -
WebsiteMetaKeywords string - -
WebsiteMetaOgImg string - -
SeoName string - -
WebsiteID string - -
EmailNormalized string - -
CompleteName string - -
MessageNeedaction boolean - -
MessageNeedactionCounter int - -
MessageHasError boolean - -
MessageHasErrorCounter int - -
MessageAttachmentCount int - -
MessageHasSmsError boolean - -
IsBlacklisted boolean - -
MessageBounce int - -
Title string - -
ParentID long - -
Lang string - -
ActiveLangCount int - -
Tz string - -
TzOffset string - -
UserID long User → ID -
Website string - -
Comment string - -
Employee boolean - -
Function boolean - -
Type string - -
Street string - -
Street2 string - -
Zip string - -
City string - -
CountryCode string - -
PartnerLatitude decimal - -
PartnerLongitude decimal - -
Email string - -
Phone string - -
Mobile string - -
IsCompany boolean - -
IsPublic boolean - -
IndustryID long - -
CompanyType string - -
CompanyID long - -
Color string - -
ContactAddress string - -
CompanyName string - -
Barcode string - -
DisplayName string - -
ImStatus string - -
ContactAddressComplete string - -
ContactAddressInline string - -
MeetingCount int - -
CalendarLastNotifAck datetime - -
CertificationsCount int - -
CertificationsCompanyCount int - -
PaymentTokenCount int - -
SignatureCount int - -
PartnerVatPlaceholder string - -
Credit decimal - -
CreditLimit decimal - -
UsePartnerCreditLimit boolean - -
ShowCreditLimit boolean - -
DaysSalesOutstanding decimal - -
Debit decimal - -
DebitLimit decimal - -
TotalInvoiced decimal - -
CurrencyID long - -
JournalItemCount string - -
PropertyAccountPayableID long Account → ID -
PropertyAccountReceivableID long Account → ID -
BankAccountCount int - -
Trust string - -
SupplierRank decimal - -
CustomerRank decimal - -
OpportunityCount int - -
EmployeesCount int - -
TaskCount int - -
IsUblFormat boolean - -
SaleOrderCount int - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Lead

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
Description string - -
HasMessage boolean - -
MessageIsFollower boolean - -
MessageNeedaction boolean - -
MessageHasError boolean - -
CampaignID long - -
SourceID long - -
MediumID long - -
ActivityState string - -
ActivityUserID long User → ID -
UserID long User → ID -
CompanyID long Company → ID -
PartnerID long Company → ID -
ActivityTypeID long - -
ActivityTypeIcon string - -
ActivitySummary string - -
ActivityDateDeadline datetime - -
MyActivityDateDeadline datetime - -
PhoneSanitized string - -
EmailNormalized string - -
EmailCc string - -
MobileBlacklisted boolean - -
PhoneBlacklisted boolean - -
IsBlacklisted boolean - -
Referred boolean - -
Active boolean - -
Type string - -
Priority decimal - -
StageID long Stage → ID -
CompanyCurrency long Currency → ID -
LostReasonID long LostReason → ID -
ExpectedRevenue decimal - -
DateClosed datetime - -
DateAutomationLast datetime - -
DateOpen datetime - -
DateLastStageUpdate datetime - -
DateConversion datetime - -
DateDeadline datetime - -
DayOpen decimal - -
DayClose decimal - -
ContactName string - -
PartnerName string - -
Title string - -
EmailFrom string - -
EmailDomainCriterion string - -
LangCode string - -
Street string - -
Street2 string - -
Zip string - -
City string - -
StateID long - -
CountryID long - -
Probability decimal - -
AutomatedProbability decimal - -
DisplayName string - -
WonStatus string - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

LostReason

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
DisplayName string - -
LeadsCount int - -
Active boolean - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Stage

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
DisplayName string - -
IsWon boolean - -
Sequence decimal - -
TeamCount decimal - -
Requirements string - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Tag

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
DisplayName string - -
Color int - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Currency

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
FullName string - -
Symbol string - -
RateString string - -
Rounding decimal - -
DecimalPlaces int - -
Position string - -
CurrencyUnitLabel string - -
CurrencySubunitLabel string - -
DisplayName string - -
FiscalCountryCodes string - -
DisplayRoundingWarning boolean - -
Date datetime - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Journal

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
Code string - -
AliasName string - -
AliasDomain string - -
AliasDefaults string - -
AliasEmail string - -
AccessUrl string - -
Type string - -
DefaultAccountType string - -
InvoiceReferenceType string - -
InvoiceReferenceModel string - -
Active boolean - -
DefaultAccountID long Account → ID -
SuspenseAccountID long Account → ID -
CompanyID long Company → ID -
CompanyPartnerID long Company → ID -
CountryCode string - -
DisplayName string - -
Color int - -
EntriesCount int - -
HasEntries boolean - -
HasPostedEntries boolean - -
HasSequenceHoles boolean - -
HasUnhashedEntries boolean - -
ShowOnDashboard boolean - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

JournalEntryLine

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
AnalyticPrecision decimal - -
ParentState string - -
Ref string - -
MoveType string - -
Debit decimal - -
Credit decimal - -
Balance decimal - -
CumulatedBalance decimal - -
CurrencyRate decimal - -
AmountCurrency decimal - -
IsSameCurrency boolean - -
CurrencyID long Currency → ID -
ProductID long ProductVariant → ID -
ProductCategoryID long ProductCategory → ID -
MoveID long JournalEntry → ID -
Quantity decimal - -
PriceTotal decimal - -
PriceUnit decimal - -
PriceSubtotal decimal - -
Discount decimal - -
TaxCalculationRoundingMethod string - -
DisplayName string - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

JournalEntry

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
SequencePrefix string - -
DisplayName string - -
AccessUrl string - -
Ref string - -
Date datetime - -
InvoiceDate datetime - -
InvoiceDateDue datetime - -
DeliveryDate datetime - -
State string - -
PaymentReference string - -
MoveType string - -
IsStorno boolean - -
SequenceNumber int - -
AmountUntaxed decimal - -
AmountTax decimal - -
AmountTotal decimal - -
AmountResidual decimal - -
AmountUntaxedSigned decimal - -
AmountTaxSigned decimal - -
AmountTotalSigned decimal - -
AmountTotalInCurrencySigned decimal - -
AmountResidualSigned decimal - -
TaxTotalAmountUntaxed decimal - -
TaxTotalAmountTotal decimal - -
TaxTotalAmountTotalCompanyCurrnecyDecimal decimal - -
TaxTotalFormattedAmountTotal string - -
TaxTotalFormattedAmountUntaxed string - -
PaymentState string - -
AmountTotalWords string - -
MoveSentValues string - -
InvoiceOrigin string - -
InvoiceUserID long User → ID -
UserID long User → ID -
JournalID long Journal → ID -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Message

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Subject string - -
Body string - -
Preview string - -
Model string - -
ResID long - -
RecordCompanyID long Company → ID -
AuthorID long User → ID -
RecordName string - -
MessageType string - -
Date datetime - -
IsInternal boolean - -
Needaction boolean - -
HasError boolean - -
EmailFrom string - -
MessageID string - -
AuthorAvatar string - -
ContactID long Contact → ID -
CompanyID long Company → ID -
JournalID long Journal → ID -
TaxID long Tax → ID -
AccountID long Account → ID -
ProductCategoryID long ProductCategory → ID -
ProductTemplateID long ProductTemplate → ID -
ProductVariantID long ProductVariant → ID -
SaleOrderID long SaleOrder → ID -
LeadID long Lead → ID -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

ProductCategory

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
ParentID long ProductCategory → ID -
CompleteName string - -
HasMessage boolean - -
MessageNeedaction boolean - -
MessageHasError boolean - -
ProductCount int - -
PackagingReserveMethod string - -
PropertyValuation string - -
PropertyCostMethod string - -
FilterForStockPutawayRule string - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

ProductTemplate

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
Description string - -
IsPublished boolean - -
CanPublish boolean - -
IsSeoOptimized boolean - -
HasMessage boolean - -
MessageNeedaction boolean - -
MessageHasError boolean - -
WebsiteUrl string - -
WebsiteMetaDescription string - -
WebsiteMetaKeywords string - -
SeoName string - -
Sequence decimal - -
DescriptionPurchase string - -
DescriptionSale string - -
Type string - -
ServiceTracking string - -
CategID long ProductCategory → ID -
CurrencyID long Currency → ID -
CostCurrencyID long Currency → ID -
CompanyID long Company → ID -
ListPrice decimal - -
StandardPrice decimal - -
Volume decimal - -
VolumeUomName string - -
Weight decimal - -
WeightUomName string - -
UomName string - -
SaleOk boolean - -
PurchaseOk boolean - -
AvailableInPos boolean - -
Active boolean - -
Barcode string - -
DefaultCode string - -
DisplayName string - -
QtyAvailable decimal - -
VirtualAvailable decimal - -
OutgoingQty decimal - -
IncomingQty decimal - -
CostMethod string - -
Valuation string - -
OutOfStockMessage string - -
BaseUnitName string - -
BaseUnitPrice decimal - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

ProductVariant

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
Description string - -
HasMessage boolean - -
MessageNeedaction boolean - -
MessageHasError boolean - -
PriceExtra decimal - -
LstPrice decimal - -
DefaultCode string - -
Code string - -
PartnerRef string - -
Barcode string - -
Active boolean - -
Volume decimal - -
Weight decimal - -
TaxString string - -
QtyAvailable decimal - -
VirtualAvailable decimal - -
FreeQty decimal - -
IncomingQty decimal - -
OutgoingQty decimal - -
ReorderingMinQty decimal - -
ReorderingMaxQty decimal - -
ValidEan boolean - -
ValueSvl decimal - -
QuantitySvl decimal - -
TotalValue decimal - -
AvgCost decimal - -
Valuation string - -
CostMethod string - -
IsPublished boolean - -
CanPublish boolean - -
IsSeoOptimized boolean - -
WebsiteUrl string - -
WebsiteMetaDescription string - -
WebsiteMetaKeywords string - -
SeoName string - -
DescriptionPurchase string - -
DescriptionSale string - -
Type string - -
ProductTmplID long ProductTemplate → ID -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

SaleOrder

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
CompanyID long Company → ID -
PartnerID long Company → ID -
PartnerInvoiceID long Company → ID -
PartnerShippingID long Company → ID -
CurrencyID long Currency → ID -
UserID long User → ID -
TaxCountryID long - -
State string - -
Reference string - -
Note string - -
InvoiceStatus string - -
TaxCalculationRoundingMethod string - -
TermsType string - -
TypeName string - -
DisplayName string - -
Health string - -
Incoterm string - -
PrepaymentPercent decimal - -
CurrencyRate decimal - -
AmountUntaxed decimal - -
AmountTax decimal - -
AmountTotal decimal - -
AmountToInvoice decimal - -
AmountInvoiced decimal - -
InvoiceCount decimal - -
DurationDays decimal - -
RemainingHours decimal - -
AmountUnpaid decimal - -
Locked boolean - -
RequireSignature boolean - -
RequirePayment boolean - -
IsExpired boolean - -
HasArchivedProducts boolean - -
DateOrder datetime - -
ValidityDate datetime - -
NextActionDate datetime - -
EffectiveDate datetime - -
EndDate datetime - -
FirstContractDate datetime - -
StartDate datetime - -
LastInvoiceDate datetime - -
NextInvoiceDate datetime - -
HasMessage boolean - -
HasPickableLines boolean - -
HasReturnableLines boolean - -
IsLate boolean - -
MessageNeedaction boolean - -
MessageHasError boolean - -
TaxTotalAmountUntaxed decimal - -
TaxTotalAmountTotal decimal - -
TaxTotalAmountTotalCompanyCurrnecyDecimal decimal - -
TaxTotalFormattedAmountTotal string - -
TaxTotalFormattedAmountUntaxed string - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

SaleOrderLine

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
OrderID long SaleOrder → ID -
CompanyID long Company → ID -
CurrencyID long Company → ID -
ProductID long ProductVariant → ID -
SalesmanID long User → ID -
State string - -
DisplayType string - -
QtyDeliveredMethod string - -
DisplayName string - -
ProductUomQty decimal - -
PriceUnit decimal - -
Discount decimal - -
PriceSubtotal decimal - -
PriceTotal decimal - -
PriceTax decimal - -
PriceReduceTaxexcl decimal - -
PriceReduceTaxinc decimal - -
QtyDelivered decimal - -
QtyInvoiced decimal - -
QtyToInvoice decimal - -
ProductQty decimal - -
QtyReturned decimal - -
QtyToDeliver decimal - -
DeliveredPriceSubtotal decimal - -
DeliveredPriceTax decimal - -
DeliveredPriceTotal decimal - -
StartDate datetime - -
ReturnDate datetime - -
Sequence decimal - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

Tax

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
Description string - -
TypeTaxUse string - -
AmountType string - -
NameSearchable boolean - -
Active boolean - -
InvoiceLabel string - -
PriceInclude boolean - -
IncludeBaseAmount boolean - -
IsBaseAffected boolean - -
Analytic boolean - -
HideTaxExigibility boolean - -
TaxExigibility string - -
CompanyID long Company → ID -
CashBasisTransitionAccountID long Account → ID -
CountryCode string - -
IsUsed boolean - -
DisplayName string - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

User

Column Type Relates to Notes
RemoteID string - -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ID long - -
Name string - -
Login string - -
Signature string - -
Active boolean - -
ActivePartner boolean - -
Share boolean - -
LoginDate datetime - -
Email string - -
DisplayName string - -
CompaniesCount int - -
ResUsersSettingsID long User → ID -
CompanyID long Company → ID -
UserGroupWarning boolean - -
TotpEnabled boolean - -
State string - -
Karma long - -
GoldBadge int - -
SilverBadge int - -
BronzeBadge int - -
JobTitle string - -
WorkPhone string - -
MobilePhone string - -
WorkEmail string - -
DepartmentID long - -
Gender string - -
Birthday string - -
PlaceOfBirth string - -
CountryOfBirth string - -
Marital string - -
SpouseCompleteName string - -
SpouseBirthdate string - -
EmergencyContact string - -
EmergencyPhone string - -
ContactAddressInline string - -
CreateDate datetime - -
WriteDate datetime - -
WriteUid long User → ID -
CreateUid long User → ID -

LeadTag

Column Type Relates to Notes
RemoteID string - -
LeadRemoteID string Lead → RemoteID -
WhenUpsertedIntoDataStore datetime - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
LeadID long Lead → ID -
TagID long Tag → ID -

Need more?

SyncHub lives and breathes APIs and data. Keep exploring using the links below.