What problem does it solve?
It automates server-side business logic in Steedos applications, such as validating records, auto-filling fields, cascading updates, and exposing custom REST API functions, without manual coding of backend services.
Core Features & Use Cases
- Triggers (.trigger.yml): Run JavaScript handlers on record lifecycle hooks like beforeInsert, afterUpdate, and beforeDelete for validation, auto-fill, and cascade operations.
- Functions (.function.yml): Define reusable server-side scripts exposed as REST endpoints at /api/v6/functions/{objectApiName}/{functionApiName} for actions like approvals, batch processing, and ERP synchronization.
- Shared Sandbox Context: Access ctx.params, the objects API for CRUD, npm utilities (lodash, moment, axios), and the MongoDB db client inside handlers.
- Use Case: When an order's status changes to approved, a trigger can notify the owner while a function syncs the order to an external ERP system via HTTP.
Quick Start
Create a beforeInsert trigger on the orders object that validates the amount is positive and auto-fills the order date.