Product Specs

This page provides a description as to how the Tulip product functional works and is designed. It is organized into the sections as described below.

  1. System Overview - These describe how Tulip can be configured at the account level, and provide necessary domain information for understanding Tulip concepts.

  2. Routes - Describe the specific views that present a user interface that is served by the admin console that let users CRUD (create, read, update and delete) specific types of data models, and relationships between models, given the appropriate access rights. The documentation of the routes effectively describes how one can use Tulip to created, edit and deploy Tulip solutions.

  3. Models - Describe the digital objects that make up a Tulip solution. Models and attributes that are wholly contained within another model, or are only important in the context of that model, are documented in a nested format with respect to that model.

  4. Components - Describe the complex and custom UI components that are used in multiple places throughout the Tulip platform. Simple components such as buttons, dropdowns, confirmation modals do not require documentation.

System Overview

IDNameDescription
S_WORKSPACEWorkspaceAn organizational unit in Tulip used to segregate users, settings and resources.
S_PLAYERTulip PlayerThe downloadable application used to run Tulip apps
S_EDGE_DEVICEIoT GatewayA description of Tulip's Hardware products
S_DESCRThe Tulip PlatformHigh level description of Tulip
S_DATAData ManagementOverview of the systems & technologies Tulip uses
S_AUTHEnterprise AuthenticationSpecification of enterprise authentication configurations
S_AUDITApplication Audit TrailA description of how Tulip creates an audit trail.

Routes

IDNameDescription
R_WIDGET_EDITORWidget EditorAn interface for editing a Custom Widget
R_USRMProfileAn interface for managing one's own user profile
R_USPRUser ProfileAn interface for editing a user's profile and access rights
R_TBLSTablesAn interface for managing Tulip Tables
R_TBLQTable Query EditorAn interface for editing all parts of a Table Query
R_TBLETable EditorAn interface for editing the schema and content of a single Tulip Table.
R_SWRKSettings - Working DaysA configuration that determines the active working days for the account
R_SWORKSPACESettings - WorkspaceAn interface for managing workspace settings
R_SUSRSettings - UsersAn interface for managing users
R_STATStationAn interface for managing a station
R_SWRKSettings - Working DaysA configuration that determines the active working days for the account
R_SPLSSettings - PlayerAn interface for managing all player settings in the account
R_SDEVSettings - Developer ModeAn interface for managing Developer Mode settings
R_SDATSettings - Date and TimeAn interface for managing the date and time settings
R_SCONNSettings - ConnectorsAn interface for managing impact of connector configuration changes on published apps
R_SCOLSettings - Color PaletteAn interface for managing the color palette for the account
R_SAPTSettings - Approval TypesAn interface for managing the account types available in the account
R_SAMLSettings - SAML SetupAn interface for managing the integration between the Tulip account and the user's SAML directory
R_SACCSettings - AccountAn interface for managing account settings
R_PLAYER_MENUTulip Player MenuAn interface for viewing and editing app permissions
R_NTWKSettings - Network AccessAn interface for managing the IP addresses and CIDR blocks that are allowed to use this account
R_MTYPSMachine TypesView a list of all machine types
R_MTYP_DETMachine Type DetailsView and configure a machine type
R_MSTSMachine StatesThe page for viewing a list of machine states
R_MLIBMachine LibraryView a list of all machines
R_MFLDMachine Activity FieldsThe page for viewing a list of machine activity fields
R_MDTSMachine Data SourcesAn interface for managing machine data sources.
R_MDTRMachine Downtime ReasonsView a list of all downtime reasons
R_MDETMachine DetailsView and configure a machine
R_MATTMachine AttributesThe page for viewing a list of machine attributes
R_HISTActivity HistoryThe page for viewing a timeline of activity records
R_EDGE_DEVICES_PAGEGateway ManagerAn interface for managing and logging into Tulip Edge Devices
R_DISPDEVDisplay DevicesAn interface for managing Display Devices, including registration via shareable links.
R_DEVMDeveloper ModeThe testing experience for using the Developer Version of any app
R_DETECTORSDetectorsThe page for viewing a list of Detectors
R_DETECTORDetectorThe page for editing a vision detector
R_DASHDashboardAn interface for viewing and editing the Dashboard model
R_CONNSConnectorsThe page for managing connectors
R_CONNConnectorThe page for managing a single connector
R_CONN_FUNCConnector Function EditorThe page for editing a connector function
R_CAM_CONFIGSCamera ConfigurationsThe page for viewing a list of camera configurations
R_CAM_CONFIGCamera ConfigurationThe page for editing a camera configuration
R_BOTSSettings - BotsAn interface for managing the credentials that are allowed to access the Tulip API on this account
R_APPVApp VersionsAn interface for viewing and managing the versions for an app
R_APPPApp PermissionsAn interface for viewing and editing app permissions
R_APPOApp OverviewA view of app structure and metadata app
R_APPGApp GroupAn interface for managing an app group
R_APPEApp EditorAn interface for editing the layout and logic of an app
R_APPDApp DashboardA page for seeing the dashboard of all analyses for an app
R_APPCApp CompletionsAn interface for viewing and exporing the completion data for anapp
R_APPAApp ApprovalsAn interface for managing approval assignment for an app
R_ANYSAnalysisA full page view of an analysis
R_ANYEAnalytics EditorAn interface for creating and editing analyses

Models

IDNameDescription
M_WORKSPACEWorkspaceAn organizational unit used to manage and control content within a Tulip Account.
M_USERUserA digital record for a person granted some level of access to the Tulip System
M_USER_STATUSUser StatusThe current state of a user with respect to the system
M_USER_ROLEUser RoleA named collection of specific access rights that can be assigned to a user
M_USER_FIELDUser FieldA custom attribute applied to the user model
M_TRIGTriggersUser defined actions performed in response to events in the Tulip system.
M_TABLETableA user defined database that easily integrates with Tulip apps.
M_TABLE_RECORDTable RecordA row in a Tulip Table
M_TABLE_RECORD_FIELDTable Record FieldA property for each object in the table. Sometimes called a column.
M_TABLE_QUERYTable QueryA collection of Table Records that can be changed based on values in an app
M_TABLE_AGGREGATIONTable AggregationA summary value that can exist on top of a single field in a Tulip Table
M_STATStationA configuration that connects a specific Tulip player to machines and devices
M_STAGStation GroupA group of stations
M_PLAYER_DEVICE_MAPPlayer Device MappingThe technical details of a device that can be used in the Tulip Player
M_MTYPMachine TypeA rule set used to define the behavior of a Machine
M_MTRIGMachine TriggersIf/Then logic for defining the state of a machine and other machine fields.
M_MSTSMachine StateA category for the current status of a Machine
M_MFLDMachine Activity FieldA field or column in a machine activity table.
M_MDTSMachine Data SourceA connection to data generated by a physical machine
M_MDTRMachine Downtime ReasonA data type used to classify downtime events for Machines
M_MATTMachine AttributeA unit of data for mapping between raw data and a Machine
M_MACHMachineA digital twin of equipment that generates data.
M_MACH_MACTMachine ActivityA running history of state details for a machine
M_EXPRESSIONExpressionsA configured code snippet that returns a calculated value based on certain inputs
M_DISPLAY_DEVICEDisplay DeviceThe physical Display Device running the Tulip Player.
M_DETECTORVision DetectorThe definition of how objects are detected by Camera Configurations.
M_DASHDashboardA column based layout for seeing a collection of analyses
M_CUSTWIDGETCustom WidgetA user created widget that can have custom behavior and interactions.
M_CREATE_APP_MODALCreate App ModalInterface to create a new app.
M_CONNConnectorA configuration that specifies how Tulip connects to an external data source
M_CONN_FUNCConnector FunctionA configured code snippet that allows apps to make requests to a connector data source
M_CONN_ENVConnector EnvironmentA configuration for how a connector accesses a data source given the app status.
M_CLRSColor PaletteAllows for defining a universal color palette that can be accessed in all apps.
M_CAM_CONFIGCamera ConfigurationA configuration for Tulip Vision that can be applied to one or more Stations.
M_BOTSBotA set of credentials for using the Tulip API
M_APPROVALTYPEApproval TypeA specific approval that must be accepted for an app to be published
M_APPGROUPApp GroupNamed groupings of Apps, similar to folders in a file system.
M_APPApp (Application)The set of all versions of an a app.
M_APP_VERApp VersionsA specific version of an app
M_APP_VER_VARVariableDynamic value used in apps for real time control logic
M_APP_VER_STEPGROUPStep GroupA collection of steps and step groups app
M_APP_VER_STEPStepA named view in an app that can be routed to based on trigger logic and human actions
M_APP_VER_STEP_SIGNSignature StepA form step that includes an e-sig widget
M_APP_VER_STEP_REGRegular StepA step that renders a custom arrangement of widgets
M_APP_VER_STEP_REG_WIDGETWidgetA UI component that can be custom configured to be on an a step
M_APP_VER_STEP_HIST_WIDGETRecord History WidgetA UI component that can be used to view the history of a table record
M_APP_VER_STEP_FORMForm StepA step that renders input widgets in a form
M_APP_VER_STEP_FORM_INPUTForm InputAn input element for user data entry on a form step
M_APP_VER_RECDRecord PlaceholderA dynamic reference in an app to a table record
M_APP_VER_QRYTable Query PlaceholderAn instance of a Table Query that is bound to an app
M_APP_VER_COMPApp Version CompletionA persistent log of App execution metrics and state.
M_APP_VER_AGGTable Aggregation InstanceAn instance of a Table Aggregation that is bound to an app
M_APP_PERMApp PermissionA named role for assigning a user certain access rights to an app
M_APP_EDITOR_NAVIGATION_OPTIONSApp Editor Navigation OptionsA collection of options allowing for easier viewing of the App Editor canvas.
M_APP_APPRApp ApprovalAn approval type assigned to an app, and the eligible approvers, required for a new version of an app to be published.
M_ANALYSISAnalysisA configuration specifying a way to retrive and represent data on a dashboard or in an app
M_ALLOWLISTIP AllowlistA set of permitted IP addresses and CIDR blocks for accessing Tulip.
M_ACTIVITYActivity RecordAn immutable record containing information about a change to master data

Components

IDNameDescription
C_MENUMenu BarA universal navigation bar across all routes in Tulip
C_ACTRActivity RecordA card for displaying an activity record