ConvertFrom-Json

In This Article

Syntax

ConvertFrom-Json
[-InputObject] <String>
[<CommonParameters>]

Description

The ConvertFrom-Json cmdlet converts a JavaScript Object Notation (JSON) formatted string to a custom PSCustomObject object that has a property for each field in the JSON string.
JSON is commonly used by web sites to provide a textual representation of objects.

To generate a JSON string from any object, use the ConvertTo-Json cmdlet.

This command uses the ConvertTo-Json and ConvertFrom-Json cmdlets to convert a DateTime object from the Get-Date cmdlet to a JSON object.

The command uses the Select-Object cmdlet to get all of the properties of the DateTime object.
It uses the ConvertTo-Json cmdlet to convert the DateTime object to a JSON-formatted string and the ConvertFrom-Json cmdlet to convert the JSON-formatted string to a JSON object.

Example 2: Get JSON strings from a web service and convert them to Windows PowerShell objects

This command uses the Invoke-WebRequest cmdlet to get JSON strings from a web service and then it uses the ConvertFrom-Json cmdlet to convert JSON content to objects that can be managed in Windows PowerShell.

You can also use the Invoke-RestMethod cmdlet, which automatically converts JSON content to objects.

Example 3: Convert a JSON string to a custom object

PS C:\> (Get-Content JsonFile.JSON) -join "`n" | ConvertFrom-Json

This example shows how to use the ConvertFrom-Json cmdlet to convert a JSON file to a Windows PowerShell custom object.

The command uses Get-Content cmdlet to get the strings in a JSON file.
It uses the Join operator to join the strings in the file into a single string that is delimited by newline characters (`n).
Then it uses the pipeline operator to send the delimited string to the ConvertFrom-Json cmdlet, which converts it to a custom object.

The Join operator is required, because the ConvertFrom-Json cmdlet expects a single string.

Required Parameters

-InputObject

Specifies the JSON strings to convert to JSON objects.
Enter a variable that contains the string, or type a command or expression that gets the string.
You can also pipe a string to ConvertFrom-Json.

The InputObject parameter is required, but its value can be an empty string.
When the input object is an empty string, ConvertFrom-Json does not generate any output.
The InputObject value cannot be $Null.

Related Links

The feedback system for this content will be changing soon. Old comments will not be carried over. If content within a comment thread is important to you, please save a copy. For more information on the upcoming change, we invite you to read our blog post.