en-US/about_DRMMObject.help.txt

TOPIC
    about_DRMMObject
 
SHORT DESCRIPTION
    Base class for all DattoRMM
 
LONG DESCRIPTION
The DRMMObject class is the root base class for all domain model classes in the DattoRMM



## PROPERTIES

The DRMMObject class exposes the following properties:

No public properties defined.\n
## METHODS

The DRMMObject class provides the following methods:

### static GetValue([PSObject]$InputObject, [String]$Key)

Safely retrieves the value of a specified property from a PSCustomObject, returning null if the property does not exist.

**Returns:** `object` - Returns object

**Parameters:**
- `[PSObject]$InputObject` - TODO: Describe this parameter
- `[String]$Key` - TODO: Describe this parameter

### static ValidateShape([PSObject]$Sample, [String[]]$RequiredProperties)

Validates that a PSCustomObject contains all specified required properties, used to verify API response structures before processing.

**Returns:** `bool` - Returns bool

**Parameters:**
- `[PSObject]$Sample` - TODO: Describe this parameter
- `[String[]]$RequiredProperties` - TODO: Describe this parameter

### static ParseApiDate([Object]$Value)

Parses an API date value that may be an epoch timestamp (milliseconds or seconds) or an ISO 8601 string, normalising it to a UTC DateTime.

**Returns:** `hashtable` - Returns hashtable

**Parameters:**
- `[Object]$Value` - TODO: Describe this parameter

### static ParseApiDateTime([Object]$Value)

Parses an API date value and returns a UTC DateTime directly, without allocating an intermediate hashtable.

**Returns:** `Nullable[datetime]` - Returns Nullable[datetime]

**Parameters:**
- `[Object]$Value` - TODO: Describe this parameter

### static MaskString([String]$Value, [Int32]$VisibleChars, [String]$MaskChar)

Masks a string value by replacing characters beyond a specified visible count with a mask character, used to obscure sensitive data such as API keys or secrets.

**Returns:** `string` - Returns string

**Parameters:**
- `[String]$Value` - TODO: Describe this parameter
- `[Int32]$VisibleChars` - TODO: Describe this parameter
- `[String]$MaskChar` - TODO: Describe this parameter

## NOTES

This class is defined in the DattoRMM.Core module's class system.
SEE ALSO
    Online Documentation
    https://github.com/TheShadowTek/DattoRMM.Core/blob/main/docs/about/classes/DRMMObject/about_DRMMObject.md