What is an IDO?
An IDO is a business-logic wrapper around one or more database tables, built on the Mongoose framework that underpins SyteLine. Instead of applications reading and writing tables directly, they call IDO methods — LoadCollection to read, UpdateCollection to write, plus custom methods that encapsulate business rules.
Think of IDOs as SyteLine's official API surface. They enforce validation, security, and event logic that raw SQL would bypass. That's why every serious integration guide says the same thing: go through the IDO layer, not around it.
Why IDOs matter for customization
The classic failure mode in SyteLine shops is the 'quick' direct-SQL customization that works until the next upgrade, then breaks silently. IDO-first development is slower by hand — which is exactly why teams skip it. Modern tooling removes that excuse.
- Upgrade safety — extensions built against IDOs survive version upgrades far better than direct-table customizations.
- Validation — IDO methods run the same business rules the forms run, so integrations can't insert invalid data.
- Security — IDO calls respect SyteLine's permission model.
- Eventing — IDO operations can trigger application events and workflows.
The traditional pain: IDO archaeology
Finding the right IDO, its properties, and its relationships has historically meant spelunking: opening forms in design mode, cross-referencing table names, and reading decade-old forum posts. A single new report can start with an hour of 'which IDO holds this field?'
Exploring IDOs with modern tooling
SyteRay treats the IDO layer as a first-class citizen. The free IDO Explorer lets you browse every IDO, its properties, and its relationships in a searchable UI. The CLI takes it further:
- Search IDOs by name, table, or property
- English-to-IDO-query translation via the AI layer
- Generated extensions bind to IDOs in the isolated slx.* namespace
sl ido list --filter "job*"
sl ido describe SLJobs
sl query "jobs released this week with qty > 100"
# → generates and runs a governed LoadCollection callFrequently asked questions
Are IDOs the same as database tables?
No. An IDO wraps one or more tables with business logic, validation, and security. Applications should call IDO methods rather than touching tables directly — that's what keeps customizations upgrade-safe.
Can I query IDOs without writing code?
Yes. SyteRay's natural-language layer translates plain English into governed IDO queries, and its free IDO Explorer lets you browse the full IDO catalog without opening a development environment.
What is the Mongoose framework?
Mongoose is the application framework SyteLine is built on. It provides the forms engine, the IDO request/response architecture, application events, and the extensibility model that IDOs live in.
Do IDOs exist in CloudSuite Industrial?
Yes — CloudSuite Industrial is SyteLine, and the IDO layer is the same. Tools built against IDOs work across on-premise SyteLine and cloud CSI deployments.
Stop doing IDO archaeology
Browse every IDO, query in plain English, and generate upgrade-safe extensions — free to start.