Search filters and the read-only API
Narrow search by product, module, version, audience, industry, type or tag, and read the same pages as JSON.
1. Overview & Business Value#
This comprehensive operational guide details the architecture, business workflows, configuration parameters, and execution steps for Search filters and the read-only API within SmartERP.
Narrow search by product, module, version, audience, industry, type or tag, and read the same pages as JSON.
{screenshot:search-filters-and-api-overview-dashboard}
2. Prerequisites & Security Access Groups#
- Required Modules:
smarterp_docs - Security Groups:
Technical Documentation Architect(Technical ID:base.group_system)Enterprise User(Technical ID:base.group_user)
- Master Data Dependencies: Markdown documentation trees, asset manifests, SVG diagram generators, and multi-language search indexes.
3. Step-by-Step Configuration & Execution#
Step 1: Navigating to the Module Interface#
- Log into your SmartERP instance at
https://smarterp.et/odoo. - Open the main App Switcher (grid icon in the top-left corner).
- Select the Documentation Portal app icon.
- From the top navigation bar, open Documentation Portal → English (/docs/en) / Amharic (/docs/am).
{screenshot:search-filters-and-api-app-switcher-navigation}
Step 2: Creating and Parameterizing Records#
- Click the New button in the top-left control panel.
- Complete the mandatory fields in the record form:
- Page Title (Mandatory): Standardized title conforming to Diátaxis framework
- Summary (Mandatory): Concise operational summary describing page intent
- Diátaxis Type (Mandatory): Valid classification (how_to, tutorial, concept, reference, admin_guide)
- Configure optional operational parameters and localized tags as required:
- Audience (Optional): Designated user roles (Accountants, Engineers, Administrators)
- Difficulty Level (Optional): beginner, intermediate, or advanced
- Click the Save icon in the control bar to commit the record.
{screenshot:search-filters-and-api-record-creation-form}
Step 3: Validating and Processing Transactions#
- State Transitions: Execute operational state progression (Authoring → Local Offline Test Validated → Manifest Registered → Published Live).
- Ledger & System Impact: Powers the public and internal technical documentation portal (
smarterp.et/docs) with sub-second rendering and dual-theme visual diagrams. - Audit Verification: Automated recording of author ID, timestamp, and immutable revision history.
{screenshot:search-filters-and-api-transaction-processing-state}
Search#
Type in the search box for suggestions as you type, or press Enter for results. Results are ranked: the title counts most, then the summary, then the text, in English or Amharic.
On the results page the Filters panel narrows the results by product, module, version, audience, industry, content type and tag. Each choice shows how many pages it would leave. Choose one and the page reloads; choose it again to remove it. You can also use the filters with no search words at all, for example every page for accountants.
Results are shown 20 at a time. The panel needs no script, and the address of a search with filters can be shared.
The API#
The same pages are available as JSON, read-only, under /docs/api/v1:
| Address | Returns |
|---|---|
/docs/api/v1/pages | A page of results. Parameters: q, lang, limit (at most 100), offset, and the filters product, module, version, audience, industry, type, tag. |
/docs/api/v1/pages/<section>/<page> | One page with its text, headings, relations and links. |
/docs/api/v1/products | The catalog with page counts and versions. |
A page has an id, title, summary, url, product, module, type, difficulty, audience, industry, tags, versions, state, visibility, reading_minutes, updated and review_by. The detail adds content_html, content_text, headings and relations.
The API follows exactly the visibility rules of the site: an anonymous caller gets public pages, a signed-in customer also gets customer pages, an employee gets everything published. It sends no cookies of its own and is never cached. It is the interface a future knowledge or learning tool can read, with no copy of the content.
Related pages#
A page shows pages related to it, grouped by how: read first, next steps, troubleshooting, configuration, API reference, questions, release notes. A relation is stored once and read from both ends, so the page you point at also lists yours. Where nobody linked anything, a page that has tags shows the pages that share the most of them.
4. Advanced Configuration Points#
- Automated Actions & Scheduled Tasks (Crons):
Documentation: Auto-rebuild search index(smarterp_docs.ir_cron_reindex): Runs on module upgrade to refresh full-text search indexes
- Custom Print Templates & Reports:
- SmartERP Technical Documentation Standards & Style Guide
- Documentation Coverage & Visual Asset Verification Matrix
- Multi-Company Rules: Record-level security isolation under Company 1 (
Ashewa Technology Solutions S.C.), preventing cross-company ledger leakage across parent and subsidiary legal entities.
5. Comprehensive Troubleshooting Matrix#
| Error Symptom / Exception | Probable Root Cause | Corrective Action / Resolution |
|---|---|---|
Test Error: Broken link in documentation | Internal doc link refers to non-existent section or page slug. | Update link path to match valid section and page identifiers. |
Test Error: Asset referenced in markdown not found in manifest | Diagram or image referenced in text lacks manifest.json entry. | Register asset ID and file paths in static/img/manifest.json. |
Formatting Warning: Stray markdown marker detected | Unclosed bold or link brackets found in rendered HTML. | Ensure all emphasis tags and links are properly closed in markdown source. |