Odoo REST API
In every application, there are two parts- one is the front end and the other is the backend. The front end needs a server that can provide it with the data. Whenever we click anywhere in Odoo, it requests the server for the data to show on the front end. The processing of data happens on the backend. The Odoo REST API app creates a medium using which if a person having any other front end look for the data deployed in Odoo or provided by Odoo can easily get it since this application exposes those APIs to the front end. The app is great if you have your website on any other platform than Odoo, but you want to use Odoo as a backend, simply for its best functionalities and amazing performance. The app bridges the gap between two platforms by generating APIs between them. That’s how data flow happens from the Odoo backend to your website front end. The app is very beneficial if you make any Android application, and want your Odoo data on that platform too. This app acts as a medium to get you the data deployed on Odoo .
Key Features
- A robust connector to bridge the gap between two platforms.
- Includes 7 APIs to execute the data.
- Allows you to use Odoo as a backend without logging into it.
- Users can download and export the data from this app.
- Users can get all the modules installed in Odoo.
- Users can read the information for a particular model or record.
- Users can read the name of records present in Odoo.
- Users can get the record information using XML ID.
- Users can read groups or a list of records using the Odoo ORM method.
- Users can search for the desired fields they want to read.
- Users can use filters to search for the fields they want to read.
-
Install the application simply install the app from app store after installation please click on the icon.:
Get the Installed modules from Odoo
Under the installed modules API, there is a button called ‘Try it out.' Press that button.
If there are some parameters, it will require them to fulfill those criteria. Or else, there will be written ‘No parameters’.
Now, if you click on the ‘Execute’ button, it will return you all the installed modules.
You can also get your data in ‘Curl’ form.
You can also download the whole data by clicking on the ‘Download button’. Therefore, you can export the data as well.
Read the information for a particular model or record
Now, let’s say you want to read the information for a particular model or record.
Note: In Odoo, there are some ORM methods. ORM methods help Odoo to search things, read the data and perform other functionalities such as filter, mapping, etc. Out of them, this app provides you with a few methods.
One of them is to read the record information method. Here are some parameters in this API. You need to define the model for which you want to read the information, and IDs you want to read along with the field name.
On pressing the ‘Execute’ button, your data will be fetched.
Whenever there is any error, you’ll get to know the reason behind it.
Here also, you can download the data fetched from the backend.
Fetch the name of a record
With the next API that we have in this app, you can fetch the name of a record present in Odoo.
On entering the Model name and record ID, and pressing the ‘Execute’ button, you get the output for the same.
Read the record information using XML ID
With this API that we have in this app, you can read the record information using XML ID.
On entering the Model name and XML ID, and pressing the ‘Execute’ button, you get the output for the same.
You can download this data as well.
Read Groups using Odoo ORM method
With this API, you can read the list of records using the Odoo ORM method..
ORM methods help Odoo to search things, read the data and perform other functionalities such as filter, mapping, etc. Out of them, this app provides you with a few methods.
One of them is to read the list of records using this method. Here are some parameters in this API. You need to define the model for which you want to read the information, IDs you want to read along with the field name.
On pressing the ‘Execute’ button, your data will be fetched.
You can download this data as well.
Search your desired data using filters
With this API, you can use any filter to fetch your desired data.
Search for the desired fields you want to read
With this API, you can search whatever field you want to read in the app.
Creating a Dashboard Item as a Polar Area Chart:
Category | Label | Description | Condition |
---|---|---|---|
General | Name | Label which will be displayed on header of item | |
Model | Select the model/table on which you want to create your item | ||
Company | Display Polar Area Chart to particular company | ||
Type | Select the type as Polar Area Chart | ||
Preview | Live Preview of the Polar Area Chart | ||
Data | Measures | Allows you to select the fields for which you want to perform the calculations as per the selected Model | Only visible when Data type is Sum or Average |
Data Type | Allows you to display your data as Sum, Count or Average | ||
Group By | Allows you to group your selected Measure fields data | Enables Target tab if Date/Datetime field is selected | |
Group By Date | Allows you to select the date option by which you wish to group the data as per selected date type group by field. Options are Day, Week, Month, Quarter, Year. | Only visible when date/datetime field is chosen in Group By | |
Sub Group By | Allows you to further group your Group By field data. | Only visible when date/datetime field is chosen in Sub Group By | |
Sub Group By Date | Allows you to select the date option by which you wish to group the grouped data as per selected date type sub group by field. Options are Day, Week, Month, Quarter, Year. | It will only visible when Sub Group By is chosen date time field | |
Sort By Field | It will allow you to select the field on which you want to sort the records/Data | ||
Sort Order | Allows you to sort your data in Ascending or Descending order | ||
Record Limit | Allows you to set limit to your records/data | ||
Domain | Allows you to add conditions to filter out your Data | This odoo default widget is only availabel in Odoo 11, 12 version. Odoo 10 customer will need technical knowledge to add conditions. | |
Date Filter Field | Field on which date filter will work | Only date fields will be displayed | |
Date Filter Selection | Select the Date filter for which you want to filter out the your item records/data | If None option is selected then only Main Dashboard page date filter will work. | |
Start Date | Option to set start date for custom date filter | Only visible when Date filter selection is set to Custom Filter | |
End Date | Option to set end date for custom date filter | Only visible when Date filter selection is set to Custom Filter | |
Display | Chart Color Palette | It will allow you to select the color from 4 pre-defined options i.e Default, Cool, Warm and Neon |
Creating a Dashboard Item as a List View:
Category | Label | Description | Condition |
---|---|---|---|
General | Name | Label which will be displayed on header of item | |
Model | Select the model/table on which you want to create your item | ||
Company | Display List View to particular company | ||
Type | Select the type as List View | ||
Preview | Live Preview of the List View | ||
Data | List View Type | Allows you to Grouped or Un-Grouped your data with respect to chosen Model | |
Fields to show in List | Allows you to select the fileds for which you want to perform the calculations as per the selected Model | ||
Group By | Allows you to group your selected Measure fields data | Enables Target tab if Date/Datetime field is selected | |
Group By Date | Allows you to select the date option by which you wish to group the data as per selected date type group by field. Options are Day, Week, Month, Quarter, Year. | Only visible when date/datetime field is chosen in Group By | |
Sort By Field | It will allow you to select the field on which you want to sort the records/Data | ||
Sort Order | Allows you to sort your data in Ascending or Descending order | ||
Record Limit | Allows you to set limit to your records/data | ||
Domain | Allows you to add conditions to filter out your Data | This odoo default widget is only availabel in Odoo 11, 12 version. Odoo 10 customer will need technical knowledge to add conditions. | |
Date Filter Field | Field on which date filter will work | Only date fields will be displayed | |
Date Filter Selection | Select the Date filter for which you want to filter out the your item records/data | If None option is selected then only Main Dashboard page date filter will work. | |
Start Date | Option to set start date for custom date filter | Only visible when Date filter selection is set to Custom Filter | |
End Date | Option to set end date for custom date filter | Only visible when Date filter selection is set to Custom Filter |
Creating a Dashboard Item as a KPI:
You can create some amazing KPI with below comparsion options:
You also get a option of additional query using which you can perform different
operation using "Data Calculation" field on two result sets along with Target
comparison:
Under Target Tab, you will get option to see target value as Number or Progressbar like described in below screenshot:
Category | Label | Description | Condition | |||
---|---|---|---|---|---|---|
General | Name | Label which will be displayed on the tile | ||||
Model | Select the model/table on which you want to create your item | |||||
Company | Display KPI to particular company | |||||
Type | Select the type as KPI | |||||
Preview | Live Preview of the KPI | |||||
Data | Record Type | Allows you to show your data/record as a Count, Sum or Average | ||||
Record Field | Allow you to select the field on which to apply the sum or average operation | It will only visible when Record Type is Sum or Average | ||||
Record Value | Display exact value depending upon selected Record Type and Record Field | |||||
Previous Period | Show/Hide previous period value | |||||
Domain | Allow you to add conditions to filter out your Data | This odoo default widget is only availabel in Odoo 11, 12 version. Odoo 10 customer will need technical knowledge to add conditions. | ||||
Date Filter Field | Field on which date filter will work | Only date fields will be displayed | ||||
Date Filter Selection | Select the Date filter for which you want to filter out the your item records/data | If None option is selected then only Main Dashboard page date filter will work. | ||||
Start Date | Option to set start date for custom date filter | Only visible when Date filter selection is set to Custom Filter | ||||
End Date | Option to set end date for custom date filter | Only visible when Date filter selection is set to Custom Filter | ||||
Data #2 | Model | Select the model/table on which you want to create your item | ||||
Record Type | Allows you to show your data/record as a Count, Sum or Average | |||||
Record Field | Allow you to select the field on which to apply the sum or average operation | It will only visible when Record Type is Sum or Average | ||||
Data Calculation | 4 options for the calculation of Data and Data #2 result set. Options are None, Sum, Ratio, Percentage. | Target value displays only when Sum and Percentage is selected | ||||
Domain | Allow you to add conditions to filter out your Data | This odoo default widget is only availabel in Odoo 11, 12 version. Odoo 10 customer will need technical knowledge to add conditions. | ||||
Date Filter Field | Field on which date filter will work | Only date fields will be displayed | ||||
Date Filter Selection | Select the Date filter for which you want to filter out the your item records/data | If None option is selected then only Main Dashboard page date filter will work. | ||||
Start Date | Option to set start date for custom date filter | Only visible when Date filter selection is set to Custom Filter | ||||
End Date | Option to set end date for custom date filter | Only visible when Date filter selection is set to Custom Filter | ||||
Display | Theme | Pre configured set of 5 different colors i.e White, Blue, Green, Red and Yellow. Select the Theme as per your choice | Get overridens if custom values are set in Background Color, Font Color & Icon Color | |||
Background Color | Allows you to set the background color from a color pop-up window. Also provides option to set transparency. | |||||
Font Color | Allows you to set the font color from a color pop-up window. Also provides option to set transparency. | |||||
Icon Option |
|
|
||||
Icon | We have provided 29 pre-loaded Default Font Awesome 4.7.0 icons | Use search bar to search for other available Font Awesome icons. | ||||
Icon Color | Allows you to choose the color of the icon. Also, provides option to set transparency. | Only visible when Icon Option chosen as Default | ||||
Target | Enable Target | Show/Hide target value | ||||
Standard Target | Target value to be compared | |||||
View | Allows you to display target value either in number or in progressbar |
Creating a Dashboard Item as a To Do Item:
You can make a list of to do work as item:
- Step1 --Go to dashboard and select the Add item option as To Do Item
- After completion the work user can mark the work as complete on dashboard.
Additional Features:
1. Global Filter
You can add a condition to filter the data on dashboard
- Pre-defined Filters
- Custom Filters
With the help of a pre-defined filter, you can add a condition to the domain to filter the data on the dashboard. For example - If a user want data of only id < 10 then he/she can add a domain on filter to do so.
1. Go to dashboard configuration and choose "Dashboards" menu.
2. Choose any of the dashboard to add filter condition and click on edit button.You will be directed on the dashboard form view
You will be able to see 2 different tabs
1. Pre-defined Filters
2. Custom filters
Choose Pre-defined Filters and click on Add a filter.
On selecting Add a Filter a Wizard will pop up
Save and click on My dashboard. User will now see a filter as odoo default
If you select the amount then the records on the dashboard filter on the basis of
condition given at the time of creation of domain.
In our case amount < 1000 was given.
You can see total amount of all the record is less than 1000 in dashboard item
Similarly, If you choose Id then the "OR" operation will be perform between both the condition.
For performing "AND" operation between the condition there is option in pre-define filter i.e Add a separator
click on the Add a Separator and add a name for the separator and save.
You can see a thin line on filter container which will work as a "AND"operator in filter condition
Go to custom filter tab and select Add a line and fill the following fields.
1. Field Label - Add a label for field.
2. Model - Select a model on which you have to add domain.
3. Domain Field- Select a desire field on which you have to add condition.
You will see a container to add a custom condition as odoo default.
click on apply and see result. It will give you a records whose customer name contains 'deco' because we have choose domain field as Customer .
2. Save Edit Layout
User now can save layouts after edit
Follow the following steps.3. Move and Duplicate a Dashboard Item:
You can Duplicate or Move any dashboard item from one dashboard to another or within same
dashboard by two ways:
1. Copy icon on item visible on mouseover as described in below screenshot:
2. Action dropdown with option to Duplicate or Move in Add/Edit screen after item is saved. Clicking the same will reveal two drop-down options to either Duplicate the dashboard item or Move the dashboard item.
Selecting either of the options will open the Dashboard Item Action pop-up. Proceed by selecting the Action you want to execute i.e. Duplicate and Move, and the destination Dashboard.
The Duplicate Action will duplicate the dashboard item from one dashboard to another or same dashboard.
The Move Action will move the dashboard item from one dashboard to another dashboard or same dashboard.
4. Resize the Dashboard Item
You can resize the dashboard items by clicking on the Edit Layout button from the top
right corner of the Dashboard screen by dragging the same horizontally or vertically
from their corners as per your need.
Note: Tiles can only be resized horizontally.
5. List View for Charts/Tile Data:
1. Charts - Click on the info icon present on top right of charts to view the
details/list view of charts data, you can even click on charts sections of filter out
particular chart data.
2. Tiles - Click on the tile to see details/list view of the data.
6. Export & Import complete dashboard between different Databases (Admin Access Only)
Steps to Export Dashboard
1. Login with admin account
2. Go to menu : My Dashboard > Configuration >
Dashboards
3. Select the dashboard record which you want to export
4. Select
"Export Dashboard" option from 'Actions' dropdown
5. A JSON file will be
downloaded with name 'dashboard_ninja.json'.
Steps to Import Dashboard
1. Login with admin account
2. Go to menu : My Dashboard > Configuration >
Dashboards
3. Click on 'Import Dashboard' button
4. Select the JSON
(dashboard_ninja.json) file exported previously
5. Dashboard will be imported
successfully and you can see in list view of Dashboards
7. Use of %UID in domain filter to filter logged in User Data
If you want to see data of logged In user for particular item, follow below steps:
1. Go to edit screen for particular dashboard item
2. Click on 'Domain Filter'
3. In value field, use %UID
4. Click Save
8. Auto Refresh
Auto refresh feature allows your data to render automatically after configured period of time. You can set the Auto Refresh timer from the Configuration > Dashboards menu available as per your need: None, 15 sec, 30 sec, 45 sec, 1 min, 2 min, 5 min, 10 min.
9. Auto Update type
You can find this option in every item on Auto Update tab.
If you go to Auto Update Tab ->Update at every instance -> Show live Update Popup It will show pop up on dashboard showing item is updated.
Auto Update feature allows your data to Update automatically, immediately after the changes
10. Target Comparison
User can define the target values for the model which they wish to see the comparison.
NOTE: Target Comparison is possible for below listed Dashboard items
1. Line Chart
2. Bar Chart
3. Horizontal Bar Chart
4. Area Chart
5. KPI
If you click on Target tab, you will be able to see the Enable Target option on activating it, you will notice the new configurations menus to set the Targets for your data as per your need.
If you input the value for “Standard Target” option, then you will be able to view your
Data target as per the input the value, as shown above screenshot.
If you wish to see the target with different data and date range, then you need to add
them by clicking on “Add Line”. on clicking the Add Line, you will be asked to select
the Date and the value for which you want to see the target.
You can add multiple lines to see the target values as per your need.
11. Quick Edit Mode
You can easily configure you dashboard on the fly from the Dashboard Screen itself for some important configurations, as shown below
12. Ability to Edit the Parent Menu of the Dashboard
This features provides you an ease to change parent menu of a particular Dashboard even after initial creation of the Dashboard.
13. Dynamic Date Filter Range
Total 15 Date Filter options are provided to filter out your data as per your need.
14. Remove the Dashboard Item
You can easily remove the dashboard item by clicking on the remove item button from the dashboard item itself.
15. Color Palette
This feature allows a user to change dashboard item’s color on the fly from the dashboard item itself.
Dashboard Ninja Configurations
You can configure your Dashboards from the My Dashboard > Configuration > Dashboards menu as shown below:
On clicking the Dashboards menu, click on list view you will be able to see below screen:
You can activate and deactivate a customized dashboard by checking and unchecking the box respectively
While creating a dashboard, you will have the option of selecting the dashboard layout from 3 Pre-defined layout templates and Preconfigured Sales Dashboard.
If you want your dashboard data to get auto refreshed after some interval, set value for 'Update Inverval' for particular dashboard.
Group Access option allows us to set groups permission who can access the selected dashboard.
On clicking the Dashboard Layouts menu, click on list view you will be able to see below screen:
You can see all the layouts you save for dashboard, as in our case My Dashboard 2
Dashboard Ninja Advance Features
1. TV Dashboard
The Dashboard Ninja Advance has come up with a TV Dashboard feature to display your curated dashboards on the TV screens. Go to ‘’My dashboard’’ section, and click on the ‘’Play’’ button at the top right corner of the page as displayed below:
With this feature, you can get the complete view of the listed items in the slide view format, with every slide showing the detail of every item.
Display Complex Analytics
2. Create/Edit query on your own
In the Dashboard Ninja Advance, you can create an item using SQL query thus allowing their users to create dashboard items with more complex data. For example, users can create dashboard items to show data from computation of different odoo model fields or to show data from multiple odoo models in one item. You can create the following 8 items by SQL query: Bar chart, Horizontal bar chart, Doughnut chart, Pie chart, Line chart, Area chart, Polar area chart and List view.
2.a. Chart Items using custom queries
Go to the ‘’My Dashboard’’ menu, click on ''Add'' button, select any type of charts from the item list and select the data calculation type as ‘’Query’’. In the Query section, add a custom query as per your requirement.
2.b. List view using custom queries
Go to the ‘’My Dashboard ’menu’, click on ''Add'' button, select the type ‘’List view’’ from the item list and select the data calculation type as ‘’Query’’. In the Query section, add a custom query as per your requirement.
Odoo.Sh Installation Steps
Steps
1. Please commit/push Dashboard Ninja code on GitHub which is associated with odoo.sh.
2. Login to the odoo.sh and click on that branch on which you have commit Dashboard Ninja.
3. Click on the connect button then go to the app search for the Dashboard Ninja app and click on the install button.
Our Releases
Latest Release 1.4.3
■ Fix - Sort Order Issue On Data Type Count Earlier sorting was not performing according to the applied sort by field on data type count.
■ Fix - Import Item Issue With Multiplier Lines Added Now user can import item with Multiplier lines.
■ Fix If in KPI Data#2 tab the date filter field is blank then applying date filter records will not affect the respective items records
■ Fix- Export Issue With Exact Timezone Now user can see exact datetime on exporting listview.
■ Fix- Export Issue With Decimal Value Now listview records will be exported with all decimal value.
Release 1.4.2
■ Enhancement Change Import Dashboard functionality, added Import Dashboard menu under Dashboard configuration menu.
Release 1.4.1
■ Fix- %MYCOMPANY Domain issue Use of %MYCOMPANY in domain filter to filter the current company data of the logged-in user.
Release 1.4.0
■ Feature-Multiplier option Added Multiplier option for Chart and grouped list view item.
Release 1.3.0
■ Feature-Multiplier option Added new Multiplier option for KPI and Tile item.
Release 1.2.2
■ Fix-Export to csv/excel issues On exporting excel/csv,all companies records were exporting.
■ Fix- Pagination error on selecting target lines To avoid pagination error after adding target lines, pagination will be ignore.
■ Fix- UI issues On exporting records export to csv button was hidden, now it is fixed
Release 1.2.1
■ Add To Do Item Added new item TO Do type in Dashboard Ninja.
■ Feature Colombian peso format On selection type of currency, User able to select in Colombian peso format and can see the amount in a particular format
■ Update configuration form view Updated the Dashboard form view for better User Experience
■ Fix Multi Company Issue We have two companies and choose one of them from the company selection. It will render the first selected company record as we enter the item and click on the dashboard menu its shows both companies item.
Release 1.2.0
■ Global Filter Feature Users now can configure (create/edit/delete) global filters for any dashboard. These filters will be visible under the Filters menu on the respective Dashboard from which the user can apply these global filters on fly.
■ Cumulative Feature for Bar and Line Chart Users now can select a field as a cumulative field to be shown on the Chart. Selected Cumulative field data will be shown as cumulative sum on the chart.
■ Add Pagination In List View User now able to set record limit to see on a page in the List View Item.
■ Item Click Action Update: Client Action Now Users can configure client action on item click. This will open the client action when they click on the dashboard item.
■ Update Dashboard Configuration View Convert the editable list of Dashboard into Form View to avoid the clustering of columns on single view.
Release 1.1.0
■ Live Update Feature User now can set Live Update feature on item to view the LIVE changes directly on dashboard
■ Dashboard Layouts Feature User now can create different layouts of single dashboard
■ Default Template Update Updated the default template items of Dashboard Ninja
■ Item Form View Update Updated the item form view for better User Experience
Frequently Asked Question
Yes, Odoo Rest api works both on Community and Enterprise Edition of Odoo.
Yes, the user can download the json data using download button .
Yes, users can hit the api using curl.
Please drop email at sales@ksolves.com or raise a ticket through Odoo store itself.
Ksolves will provide FREE 90 days support for any doubt, queries, and bug fixing (excluding data recovery) or any type of issues related to this module. This is applicable from the date of purchase.
Note:
Extensively Tested on Odoo Vanilla with Ubuntu OS
Ksolves Suggested Apps
Ksolves Odoo Services
Odoo Implementation
Odoo Community Apps
Odoo Support & Maintenance
Odoo Customization
Odoo Integration Services
Odoo Developer Outsourcing
Free 120 Days Support
Get 120 days of FREE support (doubt, queries,
& bug fixing)
on Odoo
applications from the date of purchase. Enhance the functionality of
your business with the Ksolves Odoo experts.