| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Website (website)
• Discuss (mail) |
| Lines of code | 767 |
| Technical Name |
instagram_fetcher |
| License | OPL-1 |
| Website | https://infranext.co |
| Versions | 17.0 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Website (website)
• Discuss (mail) |
| Lines of code | 767 |
| Technical Name |
instagram_fetcher |
| License | OPL-1 |
| Website | https://infranext.co |
| Versions | 17.0 18.0 19.0 |
Sync Instagram to Your Odoo Website - Automatically
Connect your Instagram Business or Creator account once, and your posts appear on your Odoo website automatically - fetched via the official Meta Graph API, stored locally, and refreshed on schedule. No third-party services. No manual uploads. No expired image links.
Features
Everything you need, nothing you don't.
|
OAuth
|
One-Click OAuth Connect Connect your Instagram Business or Creator account from Settings - Instagram Feed with a single button. Odoo handles the full OAuth handshake - no manual token copying needed. |
|
Sync
|
Automatic Post Sync - Every 60 Minutes A background cron job fetches your latest posts on schedule. New posts are saved with full metadata; existing posts have their like and comment counts kept up to date. |
|
Img
|
Local Image Storage Images are downloaded from Instagram and stored as Odoo binary attachments. Your feed keeps displaying correctly even after Instagram CDN URLs expire - no broken images. |
|
Token
|
Automatic Token Refresh A second cron job runs every 30 days to silently refresh your long-lived access token (valid ~60 days). Your feed never goes offline due to expired credentials. |
|
Feed
|
Ready-Made Feed Page - /instagram-feed A public, responsive page is available out of the box at /instagram-feed. Posts display in a clean grid with engagement stats on hover, linked directly to the original Instagram post. |
|
Block
|
Embeddable Website Snippet Drop the Instagram Feed snippet block onto any Odoo website page to show a compact 6-post mini-grid - perfect for homepages, landing pages, or footers. |
|
Video
|
Video Post Support Video posts are automatically detected. Thumbnail images are fetched for display, with a video badge overlay so website visitors know what they are clicking on. |
|
Posts
|
Full Backend Management Browse, search, and manage all fetched posts from a dedicated Instagram Feed app menu with Kanban, List, and Form views. Control which posts appear on the website with a single toggle. |
|
API
|
JSON API Endpoint A public /instagram-feed/data endpoint returns post data as JSON, making it easy for developers to build custom frontends or integrate the feed elsewhere on the site. |
How It Works
Up and running in minutes - everything lives inside Odoo Settings.
|
1
|
Install the Module Upload via Odoo Apps. The module creates the Posts model, security groups, scheduled actions, and app menu automatically on install. |
|
2
|
Connect Your Instagram Account Go to Settings - Instagram Feed and click Connect Instagram. You will be redirected to Instagram's OAuth page - log in and approve. Odoo handles the token exchange automatically. |
|
3
|
Posts Are Fetched Immediately Right after connecting, the module fetches your latest posts (configurable, default 10). Images are downloaded and stored locally in Odoo. |
|
4
|
Everything Runs on Autopilot Two background cron jobs take over: new posts are fetched every 60 minutes, and your access token is refreshed every 30 days - no manual intervention needed. |
|
5
|
Display on Your Website Visit /instagram-feed for the full-page grid view, or drag the Instagram Feed snippet into any page using the Odoo website builder. |
Requirements
This module uses the official Instagram Graph API. Your Instagram account must be a Business or Creator account.
- Instagram Business or Creator account
- Facebook Page linked to the Instagram account
- Outbound HTTPS access from your Odoo server to graph.instagram.com
- Module ships pre-configured with Meta App credentials - no developer setup required
Technical Specs
Clean, idiomatic Odoo code. No extra Python dependencies beyond the standard requests library.
| Auto-sync interval | Every 60 minutes |
| Token refresh cycle | Every 30 days |
| Max posts per fetch | 20 posts |
| Token validity | ~60 days (long-lived) |
| Python dependencies | None (uses built-in requests) |
| Editions | Community & Enterprise |
Compatibility
| Odoo 17.0 | Odoo 18.0 | Odoo 19.0 | Community | Enterprise |
InfraNext
Built with care - infranext.co - Licensed under OPL-1
Built with care - infranext.co - Licensed under OPL-1
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module