ServiceNow Fluent
-
- UpdatedJan 30, 2025
- 3 minutes to read
- Xanadu
- Building applications
Define application metadata in source code using the ServiceNow Fluent domain-specific programming language.
Overview of ServiceNow Fluent
ServiceNow Fluent is a domain-specific language (DSL) based on TypeScript for defining the metadata files [sys_metadata] that make up applications and includes APIs for the different types of metadata, such as tables, roles, ACLs, business rules, and Automated Test Framework tests.
Developers define this metadata in a few lines of code instead of through a form or builder tool user interface. Applications created or converted with the ServiceNow IDE or ServiceNow SDK support developing in ServiceNow Fluent.
To get started using the ServiceNow IDE or ServiceNow SDK, see the ServiceNow IDE or ServiceNow SDK documentation.
APIs
ServiceNow Fluent includes APIs for the following types of metadata. You can use the Record API to define application metadata that doesn't have a dedicated API.
For details about the APIs and examples, see ServiceNow Fluent API reference and the ServiceNow SDK examples GitHub repository.
- Access control lists (ACLs)
- Application menus
- Automated Test Framework tests
- Business rules
- Client scripts
- Lists
- Properties
- Records
- Roles
- Scripted REST APIs
- Tables
Usage
In files with the .now.ts extension, use objects in the ServiceNow Fluent APIs to define metadata in the application. You must also include the required imports for the APIs from @servicenow/sdk/core.
After building the application, this source code generates the following application metadata files on the instance.

@fluent-ignore
: Suppresses ServiceNow Fluent diagnostic warnings and errors in the following line of code.@fluent-disable-sync
: Turns off syncing changes to a ServiceNow Fluent object. Use before a call expression (for example,Record({ ... })
) to turn off syncing for that object and its child objects. Only use this directive if you want to ignore changes made outside of the source code to the object and never update it when syncing.@fluent-disable-sync-for-file
: Turns off syncing changes to a ServiceNow Fluent file (.now.ts). Use in the first line of the file to turn off syncing for all code in the file. Only use this directive if you want to ignore changes made outside of the source code to the file and never update it when syncing.
On this page
Related Content
- Define application metadata in code with ServiceNow Fluent in the ServiceNow IDE
Define application metadata in code with ServiceNow Fluent in the ServiceNow IDE.
- Define application metadata in code with ServiceNow Fluent and the ServiceNow SDK
Define application metadata in code with ServiceNow Fluent and the ServiceNow SDK.