SyteLine IDO REST Request Generator
Every SyteLine form reads and writes data through IDOs, and the IDO REST service lets any script or integration tool use the same objects. The syntax is easy to get wrong, especially filters, URL encoding and the update body. This generator builds the calls from a few fields.
Fill in
1. Request a token
GET https://syteline.example.com/IDORequestService/ido/token/PROD_Config/apiuser/<password> Accept: application/json # Response contains a Token value. Send it in the Authorization header of every later call.
2. Load collection
GET https://syteline.example.com/IDORequestService/ido/load/SLItems?properties=Item,Description,UM,UnitCost&filter=Item LIKE 'PN-%'&orderBy=Item&rowcap=100 Authorization: <token> Accept: application/json # URL encode spaces, quotes and percent signs in the filter before sending, for example Item%20LIKE%20%27PN-%25%27
3. Update one record
POST https://syteline.example.com/IDORequestService/ido/update/SLItems?refresh=true
Authorization: <token>
Content-Type: application/json
{
"Changes": [
{
"Action": 2,
"ItemId": "<_ItemId value returned by the load call>",
"Properties": [
{ "Name": "Description", "Value": "Updated description for PN-48213", "Modified": true, "IsNull": false }
]
}
]
}
# Action values: 1 insert, 2 update, 4 delete.4. Invoke a method
POST https://syteline.example.com/IDORequestService/ido/invoke/SLItems?method=ItemGetCostSp Authorization: <token> Content-Type: application/json [ "PN-48213" ] # The body is a JSON array of the method parameters in the order the method declares them.
Verify the URL shape, token flow and available IDO names for your version. Cloud tenants usually sit behind Infor ION API and use OAuth2 bearer tokens instead of the token endpoint shown in step 1. Never put real passwords in saved files. Test updates in a non-production configuration first.
Safe write-back to SyteLine
Optional: talk through an IDO-based integration or agent with human approval before any update is posted.
Optional. The tool and every export work without this. No spam.
How to use the generator
Enter your base URL, configuration, IDO and the properties you want, then copy each block into Postman, curl or your integration code. The load call returns rows plus an _ItemId value for each record. That value identifies the row and is what the update call needs, so always load first and update second. Keep the row cap small while you test, because an IDO load with no cap can return a very large result and load the application server.
- Property names are IDO property names, not database column names.
- Filters use SQL-like expressions on IDO properties.
- Start with a row cap of 10 to 100.
Reading the update body
An update request is a Changes array. Each change names an Action, the ItemId of the target row and the properties that changed. Mark each changed property as Modified and set IsNull to false, or the server ignores it. Writing through an IDO runs the same validations and event handlers as the forms, which is the reason to prefer IDOs over direct SQL writes: business rules, triggers and audit information stay intact. Multiple changes in one request execute together.
Common mistakes
Most failed calls come from a few causes. Using database column names such as item_mst columns instead of IDO property names returns an error about unknown properties. Forgetting to URL encode a filter breaks on spaces and percent signs. Calling an IDO without permission for that user in the configuration returns an authorization failure that looks like a bad URL. Finally, cloud and on-premise versions authenticate differently, so copy the token step only after you confirm which flow your tenant uses.
- Use a dedicated integration user with minimal permissions.
- Page large loads with rowcap and filters, not one huge call.
- Log the request and response while testing, never the password.
Frequently Asked Questions
What is an IDO in SyteLine?
An IDO, or Intelligent Data Object, is the business object layer between SyteLine forms and the database. It exposes properties and methods, applies validation and runs event handlers. REST calls, forms and the Excel add-in all use IDOs rather than touching tables directly.
Why does my IDO REST call return an unknown property error?
Almost always because a database column name was used instead of the IDO property name. Check the IDO definition in the IDO development tools or load one record with no property list to see the available names, then use those exactly in the properties and filter values.
Can I write directly to SyteLine tables instead?
You can, but it bypasses validation, event handlers and audit behavior, and can corrupt related data or void support. Using IDO update or an application method keeps business rules in force. Reserve direct SQL for reads and reporting.
Does this work for CloudSuite Industrial?
The IDO model is the same, but cloud tenants typically authenticate through Infor ION API with OAuth2 and a tenant specific URL. Use the load, update and invoke patterns from this page, and replace the token step with the authentication flow your tenant requires.
Netray builds SyteLine integrations and agents on top of IDOs with human approval on any write. If you would rather ask questions of SyteLine than hand-write requests, we can show you how.
Related Tools
SyteLine SQL Query Generator for Item, Job and Order Tables
Fill in site, item prefix, job status and date to produce read-only SQL for item master, jobs and open customer order lines.
Infor SyteLineSyteLine Form Personalization Checklist
A practical checklist for scoping, building, testing, documenting and upgrading SyteLine form personalizations without creating upgrade debt.
Infor SyteLineSyteLine Item Import Worksheet
A staging sheet for item master data with computed first-buy value, ready to clean in the browser and export to Excel or CSV for loading.
Infor SyteLineSyteLine Job and Order Status Codes Reference
Look up what Planned, Firm Planned, Released, Stopped, Complete and the other SyteLine status codes mean and how they behave in planning and shipping.
More Developer Tools tools
See all- SyteLine SQL Blocking and Long Running Query Script Generator
- SyteLine Custom Table CREATE Script Generator
- SyteLine Mongoose Framework Events Reference
- SyteLine Event Action Types Reference
- SyteLine Event Action Parameter Functions Reference
- SyteLine WinStudio Standard Form Events Reference
- SyteLine Mongoose API Options Reference
- SyteLine SQL User-Defined Data Types Reference
- SyteLine IDO Extension Class Method Generator
New to Infor SyteLine? Start with the Infor SyteLine guide and toolkit, or plan with Training Path Builder, ERP Certification Study Planner, Upgrade Path Planner.
Keep exploring
Free tools
- SyteLine ION API IDO Request GeneratorTurn a .ionapi backend service file into working PowerShell and curl calls that load SyteLine IDO data through ION API, including bookmark paging.
- SyteLine IDO Custom Load Method GeneratorGet a working C# custom load method that returns a DataTable of late customer order lines, the IDO metadata steps to expose it, and a REST call to test it.
- SyteLine IDO API Security Hardening ChecklistAccounts, transport, tokens, request hygiene and monitoring checks for exposing the SyteLine IDO request service (REST and SOAP) to integrations and scripts.
ERP fixes and how-tos
- Private AI Layer for SyteLine On-Prem: Reference ArchitectureReference architecture to add a private AI assistant to SyteLine on-prem: data access paths, retrieval, permissions, sizing and rollout, no cloud needed.
- How to Add a Custom Method to a SyteLine IDO in C#How to expose a new server-side operation on a SyteLine IDO: define the method on the IDO Collection, implement it in C#, and call it safely.
- How to Call SyteLine IDOs from an External ApplicationHow the SyteLine IDO SOAP web service works, how to authenticate and call Load, Update, and Invoke from external code, and where it commonly fails.
Guides
- SyteLine IDO Request Object: Complete Property ReferenceComplete reference for the SyteLine IDO Request object. Properties, methods, filter syntax, and usage patterns for LoadCollection, UpdateCollection, and InvokeMethod.
- How to Build Custom IDOs in Infor SyteLineLearn how to create custom IDOs in Infor SyteLine from scratch. Step-by-step guide covering IDO class creation, property mapping, and deployment to CloudSuite Industrial.
- Extending SyteLine IDOs with Custom Extension MethodsMaster SyteLine IDO extension methods. Learn to add custom business logic to standard and custom IDOs using C# extension classes in Infor CloudSuite Industrial.
Integrations
- How to add Slack to Infor SyteLineConnect Slack to Infor SyteLine with slash commands, interactive approval messages and event alerts built on the IDO REST service, AES and ION.
- How to add a mobile app to Infor SyteLineBuild or extend a mobile app for Infor SyteLine: barcode scanning, labor reporting, inventory moves and approvals over IDO REST, with offline and device options.