ConvertTo-JsonForPSWS
Converts an object to a JSON-formatted string for PowerShell Web Services.
Syntax
ConvertTo-JsonForPSWS
[-InputObject] <Object>
[-Depth <Int>]
[-Compress]
[<CommonParameters>]
Description
The ConvertTo-JsonForPSWS
cmdlet converts any object to a string in JavaScript Object Notation (JSON) format for PowerShell Web Services. The properties are converted to field names, the property values are converted to field values, and the methods are removed.
You can then use the ConvertTo-JsonForPSWS
cmdlet to convert a JSON-formatted string to a JSON object, which is easily managed in Windows PowerShell.
Examples
-------------------------- Example 1 --------------------------
PS C:\> (Get-UICulture).Calendar | ConvertTo-JsonForPSWS
{
"MinSupportedDateTime": "\/Date(-62135568000000)\/",
"MaxSupportedDateTime": "\/Date(253402300799999)\/",
"AlgorithmType": "SolarCalendar",
"CalendarType": "Localized",
"Eras": [
1
],
"TwoDigitYearMax": 2029,
"IsReadOnly": false
}
This command uses the ConvertTo-JsonForPSWS
cmdlet to convert a GregorianCalendar object to a JSON-formatted string for PowerShell Web Services.
-------------------------- Example 2 --------------------------
PS C:\> @{Account="User01";Domain="Domain01";Admin="True"} | ConvertTo-JsonForPSWS -Compress
{"Admin":"True","Account":"User01","Domain":"Domain01"}
This command shows the effect of using the Compress parameter of ConvertTo-JsonForPSWS
. The compression affects only the appearance of the string, not its validity.
-------------------------- Example 3 --------------------------
PS C:\> Get-Date | Select-Object -Property * | ConvertTo-JsonForPSWS
{
"DisplayHint": {
"value": 2,
"Value": "DateTime"
},
"DateTime": "domingo, 27 de mayo de 2018 19:01:15",
"Date": "\/Date(1527390000000)\/",
"Day": 27,
"DayOfWeek": {
"value": 0,
"Value": "Sunday"
},
"DayOfYear": 147,
"Hour": 19,
"Kind": {
"value": 2,
"Value": "Local"
},
"Millisecond": 225,
"Minute": 1,
"Month": 5,
"Second": 15,
"Ticks": 636630444752251610,
"TimeOfDay": {
"Hours": 19,
"Minutes": 1,
"Seconds": 15,
"Ticks": 684752251610,
"Days": 0,
"Milliseconds": 225,
"TotalDays": 0.79253732825231482,
"TotalHours": 19.020895878055555,
"TotalMilliseconds": 68475225.161,
"TotalMinutes": 1141.2537526833335,
"TotalSeconds": 68475.225161
},
"Year": 2018
}
This command shows how to use the ConvertTo-JsonForPSWS
cmdlet to convert an object to a JSON string for PowerShell Web Services.
It uses the ConvertTo-JsonForPSWS
cmdlet to convert a System.DateTime object from the Get-Date cmdlet to a JSON-formatted string for PowerShell Web Services. The command uses the Select-Object cmdlet to get all () of the properties of the *DateTime object. The output shows the JSON string that ConvertTo-JsonForPSWS
returned.
-------------------------- Example 4 --------------------------
PS C:\> $JsonSecurityHelp = Get-Content $Pshome\Modules\Microsoft.PowerShell.Security\en-US\Microsoft.PowerShell.Security.dll-Help.xml | ConvertTo-JsonForPSWS
This command uses the ConvertTo-JsonForPSWS
cmdlet to convert a Windows PowerShell Help file from XML format to JSON format for PowerShell Web Services.
Parameters
-Compress
Omits white space and indented formatting in the output string.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Skype for Business Online |
-Depth
Specifies how many levels of contained objects are included in the JSON representation. The default value is 2.
Type: | Int |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Skype for Business Online |
-InputObject
Specifies the objects to convert to JSON format. Enter a variable that contains the objects, or type a command or expression that gets the objects. You can also pipe an object to ConvertTo-JsonForPSWS
.
The InputObject parameter is required, but its value can be null ($Null) or an empty string. When the input object is $Null, ConvertTo-JsonForPSWS
does not generate any output. When the input object is an empty string, ConvertTo-JsonForPSWS
returns an empty string.
Type: | Object |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Skype for Business Online |
Inputs
System.Object
You can pipe any object to ConvertTo-JsonForPSWS.
Outputs
System.String