Data Types

JSON

type description
BaseItemCommand A command for an item.
BaseItemMethod The base for an item method to execute.
BooleanInput
BooleanVisualType
CheckboxInput
ClusterHost Class providing host information.
ClusterMode The modus of the cluster agent.
ColorpickerMode
ConfigurableDevice
ConstraintType Constraint types.
ControlCommand
ControlCommandOfString
ControlCommandSet
ControlCommandSetOfString
ControlConfiguration Structure for custom composed devices when posted to the server.
ControlConfigurationInputType A control configuration input type.
ControlGraphType
ControlListConfigurationItem A configuration for list items.
ControlStatus
ControlVisualType
CustomDevice
CustomSerialDevices Base device for serial interfaces which has been custom created by the user.
DailyTimeRangeConstraint A constraint based on one or multiple time ranges.
DefinitionType The definition types.
DescriptionList
DescriptionListItem
Device
DeviceBooleanDataControl
DeviceBuilderConfiguration A configuration for the device builder.
DeviceBuilderType
DeviceButtonControl
DeviceColorPickerControl
DeviceColorPickerControlColorData
DeviceCommand A command to be executed by a device module.
DeviceControl
DeviceControlDataType
DeviceControlGroup
DeviceControlType
DeviceDefinition A definition of a device to be stored in the database and is re-creatable.
DeviceMeta A container for linking a device to it's definition.
DeviceNumberDataControl
DeviceOptions
DeviceParameter
DeviceSelectControl
DeviceSliderControl
DeviceStatus
DeviceStringDataControl
DeviceToggleControl
Discovered
DiscoveredDevice
DiscoveredItem
DiscoveredItemDefinition An item defining a discovered item.
DiscoveryPeriod Rule to be applied for periodic actions.
DiscoveryPeriodOptions Entity providing discovery options.
DisplayInput
DoubleInput
DriverDefinition A driver definition for an attached peripheral.
DriverDefinitionBase Driver definition Simplified for definition transfer.
DriverType
DummyForm Container for forms for the frontend. The target is implementation specific. When a PresentationForm is communicated with the outside world it is expected to be returned as the PresentationForm.
Environment
FixedDevice
FutureOfVoid
GeoLocation The current GEO Location.
HardwareComponent A base class to ensure compatibility with hardware methods. A hardware component is OS and hardware specific. A component on windows will not always be available on other platforms like raspberry pi pins are not available on for example desktops, or at least not in the same form.
HardwareDriver
HardwareInfo Object to diplay information about an hardware interface.
HostIdentification The primary identification of an host.
Icon
IconType
InetAddress
InputField
InputFieldSearchQuery
InputFieldType
InputForm
InputSection
IntegerInput
Interface The hardware interface of the component.
IpAddressInput
IssuedAtObject Class to create an object supporting when a token was issued.
Item
ItemAction An action for an item.
ItemActionType The type of action for an item.
ItemAddress
ItemBooleanAddress
ItemCommand Base class for an item command.
ItemDefinition A definition of a single item.
ItemFloatAddress
ItemHexAddress
ItemIntegerAddress
ItemIpAddress
ItemMeta Item Meta information.
ItemOption A single item option.
ItemPropertyInterface
ItemStringAddress
ItemType
Length Length used in the rule.
LoginObject A simple login object which can be used to authenticate a user.
LoginResource A login resource object.
MDNSDiscoveryResult
MDNSService An MDNS service.
Manufacturer A manufacturer of an item or other component used.
Maven2Repository A maven repository type. This type provides searching and gethering packages from maven repositories. It supports both normal and snapshot repositories. There is a naming convention to follow which can be identified at:
MobileDevice A mobile device bound to an user.
ModuleAddResult Result used when a module is successfully added.
ModuleBase
ModuleCapabilities
ModuleConfiguration
ModuleContainer A container for an active module.

A module container acts as a proxy between the actual module and the server and between a module and the driver. The implementation is responsible for providing correct Items to the server's Item handler and a bridge between the module and it's driver.

ModuleDefinition This class provides a module candidate for which a configuration can be loaded.
ModuleDiscovery
ModuleLoaderConfiguration Main object containing all the required information to start a module.

When a module is started successfully a configuration is stored to create a persistence object to survive between restarts.

ModuleNullConfiguration
ModuleType
NetInterface A network interface.
NetworkDevice A single network interface identifying device.
NetworkDevices Provider of network devices.
ObjectPropertyBinding
Operation An operation on a permission.
PassChangeObject Object used for password changes.
PasswordInput
PasswordStrengthResponse Password strength response object.
Peripheral A to PiDome attached device.
PeripheralBase A DTO for a peripheral.
Permission Collection of permissions.
PermissionCategory A category for a permission. A category may, or may not have a sub category.
PermissionOperation A combined Permission with allowed operation on that permission.
Person Identifying a person.
PidomeAdminUser The default pidome user.
PidomeSystemUser The default system user.
PidomeTokenContainer The token used in the authentication of a request on behalf of a user.

This is more then just the token. This object supplies the end user extra context about an token where applicable. This will support the end user in revoking tokens.

Great care should be taken by API development. The return of tokens should only be done by the end user which owns these.

PlatformInfo Identifying the platform running on.
Premises The premises.
PremisesSection A section on a premises.
Presentation
PresentationComponent
PresentationIcon
PresentationPlatform
PresentationSection
Property A property (housing / building) The current meaning of property is housing, building on a premises. If looking for system based properties go to org.pidome.server.system.config.SystemConfig
PropertyLevel A level in the premises. From basement to top floor/attic location.
PropertySection A region on a premises level. From rooms, attics, toilets to a region in a garden, driveway or parking lot etc.
PropertySectionType The type of section identifying where it is located.
ProvidedDevice
QrData The object holding the QR data. Object is required for completing the authorization process.
RegionSection The base for any section. This entity contains two parameters which provides support to display this entity in an ordered manner with a combined compound name like:
  • premises/section
  • premises/property/level/section
The above is only available when a compound request is made. For example when retrieving items. These two parameters are transitive and can not be set or altered as this will have no result.
Repository A single remote repository.
RepositoryContainer A provider for repositories. A repository provider is a collection of repositories where a package originates from. The provider can consist of multiple repositories which normally would contain normal and snapshot versions of a package.
RepositoryType The different kind of repository types.
SelectEnumInput
SelectInput
SelectInputItem
SerialDevice A device that communicates through the serial interface.
SerialDevices Root class for serial based devices.
ServerPackage A server package.
ServerVersion The server version.
ServicesConfig Class containing the configuration of the available services suitable for consuming.
StringMultiLineInput
StringSingleLineInput
SystemLocale A single system locale object.
Temperature
Type
Type Types supported by discovery.
USBDevice Creates an USB device.
USBDevices Covering class for all USB actions.
Unit The period unit.
UnknownModule
UrlInput
UsbHidDevice An USB HID device.
UsbSerialDevice An USB device supporting a serial interface.
UserConstraint An interface for permission constraints.
UserLogin User model. (Database annotations)
UserRole The user roles.
Weather
WeatherItem A weather item.
Wind