{"id":4856,"date":"2012-10-08T00:01:00","date_gmt":"2012-10-08T00:01:00","guid":{"rendered":"https:\/\/blogs.technet.microsoft.com\/heyscriptingguy\/2012\/10\/08\/use-powershell-to-convert-to-or-from-json\/"},"modified":"2012-10-08T00:01:00","modified_gmt":"2012-10-08T00:01:00","slug":"use-powershell-to-convert-to-or-from-json","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/scripting\/use-powershell-to-convert-to-or-from-json\/","title":{"rendered":"Use PowerShell to Convert to or from JSON"},"content":{"rendered":"<p><b>Summary<\/b>: Windows PowerShell MVP, Doug Finke, discusses using a simple Windows PowerShell command to convert to or from JSON.<\/p>\n<p>Microsoft Scripting Guy, Ed Wilson, is here. Today we have guest blogger, Doug Finke.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/29\/2019\/02\/5545.hsg-10-8-12-1.jpg\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/29\/2019\/02\/5545.hsg-10-8-12-1.jpg\" alt=\"Photo of Doug Finke\" title=\"Photo of Doug Finke\" \/><\/a><\/p>\n<p style=\"padding-left: 30px\">Microsoft Windows PowerShell MVP, Doug Finke is the author of <i>Windows PowerShell for Developers.<\/i> He works in New York City for Lab49, a company that builds advanced applications for the financial service industry. Doug is a developer, author, and speaker working with numerous technologies.<\/p>\n<p style=\"padding-left: 30px\">Blog: <a href=\"http:\/\/dougfinke.com\/\" target=\"_blank\">Hi, I&#8217;m Doug Finke!<\/a><\/p>\n<p>JavaScript Object Notation (JSON) is a lightweight, text-based, open-standard that is designed for data interchange. Despite its relationship to JavaScript, it is language-independent, with parsers available for many languages, including Windows PowerShell.<\/p>\n<p>The JSON format is often used for serializing and transmitting structured data over a network connection. It is used primarily to transmit data between a server and a web application, serving as an alternative to XML.<\/p>\n<p>The following example shows the JSON representation of an object that describes a person. The object has string fields for first name and last name, has a number field for age, contains an object representing the person&rsquo;s address, and contains a list (an array) of phone number objects.<\/p>\n<p style=\"padding-left: 30px\">$json = @&#8221;<\/p>\n<p style=\"padding-left: 30px\">{<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; &#8220;firstName&#8221;: &#8220;John&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; &#8220;lastName&#8221; : &#8220;Smith&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; &#8220;age&#8221;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 25,&nbsp;&nbsp;&nbsp;&nbsp; &#8220;address&#8221;&nbsp; :<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; {<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;streetAddress&#8221;: &#8220;21 2nd Street&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;city&#8221;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : &#8220;New York&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;state&#8221;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : &#8220;NY&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;postalCode&#8221;&nbsp;&nbsp; : &#8220;10021&#8221;<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp; },&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;phoneNumber&#8221;:<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp; [<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;type&#8221;&nbsp; : &#8220;home&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;number&#8221;: &#8220;212 555-1234&#8221;<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;type&#8221;&nbsp; : &#8220;fax&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;number&#8221;: &#8220;646 555-4567&#8221;<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp; ]<\/p>\n<p style=\"padding-left: 30px\">&nbsp;}<\/p>\n<p style=\"padding-left: 30px\">&#8220;@<\/p>\n<h2>Converting JSON to Windows PowerShell objects and back<\/h2>\n<p>There&rsquo;s a one-liner to take a string of JSON and convert it to a Windows PowerShell representation. The variable <b>$PowerShellRepresentation<\/b> contains the object, complete with properties and nested structures:<\/p>\n<p style=\"padding-left: 30px\">PS C:\\&gt; $PowerShellRepresentation = $json | ConvertFrom-Json<\/p>\n<p>Now, let&rsquo;s access the string that we converted in Windows PowerShell.<\/p>\n<p style=\"padding-left: 30px\">PS C:\\&gt; $PowerShellRepresentation<\/p>\n<p style=\"padding-left: 30px\">&nbsp;<\/p>\n<p style=\"padding-left: 30px\">firstName&nbsp;&nbsp; : John<\/p>\n<p style=\"padding-left: 30px\">lastName&nbsp;&nbsp;&nbsp; : Smith<\/p>\n<p style=\"padding-left: 30px\">age&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 25<\/p>\n<p style=\"padding-left: 30px\">address&nbsp;&nbsp;&nbsp;&nbsp; : @{streetAddress=21 2nd Street; city=New York; state=NY; postalCode=10021}<\/p>\n<p style=\"padding-left: 30px\">phoneNumber : {@{type=home; number=212 555-1234}, @{type=fax; number=646 555-4567}}<\/p>\n<p>Windows PowerShell can interoperate with JSON. Being able to consume text and turn it into objects with properties makes it super-easy to get at information and consume it in the way you need to.<\/p>\n<p>This isn&rsquo;t a one-way ticket, though; we can take the round-trip. We&rsquo;ll take the JSON we converted to Windows PowerShell and pipe it to <b>ConvertTo-Json<\/b>, and it will produce the JSON string we started with originally.<\/p>\n<p style=\"padding-left: 30px\">$PowerShellRepresentation | ConvertTo-Json<\/p>\n<p style=\"padding-left: 30px\">{<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; &#8220;firstName&#8221;:&nbsp; &#8220;John&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; &#8220;lastName&#8221;:&nbsp; &#8220;Smith&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; &#8220;age&#8221;:&nbsp; 25,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; &#8220;address&#8221;:&nbsp; {<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;streetAddress&#8221;:&nbsp; &#8220;21 2nd Street&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;city&#8221;:&nbsp; &#8220;New York&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;state&#8221;:&nbsp; &#8220;NY&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;postalCode&#8221;:&nbsp; &#8220;10021&#8221;<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp; &#8220;phoneNumber&#8221;:&nbsp; [<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;type&#8221;:&nbsp; &#8220;home&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;number&#8221;:&nbsp; &#8220;212 555-1234&#8221;<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;type&#8221;:&nbsp; &#8220;fax&#8221;,<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;number&#8221;:&nbsp; &#8220;646 555-4567&#8221;<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<\/p>\n<p style=\"padding-left: 30px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]<\/p>\n<p style=\"padding-left: 30px\">}<\/p>\n<p>This means that we can work in Windows PowerShell, including creating directory listings (Windows PowerShell objects), reading XML (Windows PowerShell objects), calling methods on .NET DLLs, getting results (Windows PowerShell objects). Then we can pipe the results to <b>ConvertTo-Json<\/b>, and we&rsquo;re ready to interact with services that accept JSON.<\/p>\n<h2>What if a web or REST service returns JSON?<\/h2>\n<p>If JSON is returned by a web or REpresentational State Transfer (REST) service, no problem. Windows PowerShell has a cmdlet that makes it incredibly easy to handle the request and conversion in a couple of lines of script:<\/p>\n<p style=\"padding-left: 30px\">$url = &#8216;http:\/\/search.twitter.com\/search.json?q=powershell&#8217;<\/p>\n<p style=\"padding-left: 30px\">(Invoke-RestMethod $url).results<\/p>\n<p>Or even less if we use an alias:<\/p>\n<p style=\"padding-left: 30px\">(irm $url).results<\/p>\n<p>Here is the first element of the array that returned from the Twitter search we just ran. Remember, each is accessible via the property name. Plus, because we are working with Windows PowerShell, we can leverage other cmdlets in Windows PowerShell, like <b>Export-Csv<\/b>, and then pipe the results to a comma-separated value file. This preps it for use in Excel, for example. That&rsquo;s a great return on a single line of code.<\/p>\n<p style=\"padding-left: 30px\">created_at&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : Sat, 24 Mar 2012 16:54:47 +0000<\/p>\n<p style=\"padding-left: 30px\">from_user&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : denisemc06 from_user_id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 78444415 from_user_id_str&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 78444415 from_user_name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : Denise McInerney geo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 183597742919135233 id_str&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 183597742919135233<\/p>\n<p style=\"padding-left: 30px\">iso_language_code&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : en<\/p>\n<p style=\"padding-left: 30px\">metadata&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : @{result_type=recent}<\/p>\n<p style=\"padding-left: 30px\">profile_image_url&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : http:\/\/a0.twimg.com\/profile_images\/1637362430\/<\/p>\n<p style=\"padding-left: 30px\">headshot3_small_normal.jpg<\/p>\n<p style=\"padding-left: 30px\">profile_image_url_https : https:\/\/si0.twimg.com\/profile_images\/1637362430\/<\/p>\n<p style=\"padding-left: 30px\">headshot3_small_normal.jpg<\/p>\n<p style=\"padding-left: 30px\">source&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : &amp;lt;a href=&amp;quot;http:\/\/www.tweetdeck.com&amp;quot;<\/p>\n<p style=\"padding-left: 30px\">rel=&amp;quot;nofollow&amp;quot;&amp;gt;TweetDeck&amp;lt;\/a&amp;gt;<\/p>\n<p style=\"padding-left: 30px\">text&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : Getting #powershell schooling from @SQLvariant at #sqlsat120 to_user&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : to_user_id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : to_user_id_str&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : to_user_name&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:<\/p>\n<p>So, we can now consume and produce JSON, the Internet <i>lingua franca<\/i>. We can query REST services and let Windows PowerShell automatically convert JSON to Windows PowerShell objects, which can be piped to other Windows PowerShell functions or cmdlets and transformed to different shapes and formats. Anytime I find myself reaching for cUrl or wget, I first check to see if I can do what I need in Windows PowerShell&nbsp;3.0.<\/p>\n<p>~Doug<\/p>\n<h2>About Doug&rsquo;s book<\/h2>\n<p>Here is a bit about Doug Finke&rsquo;s book <i>Windows PowerShell for Developers<\/i>. &ldquo;For Developers&rdquo; is in the title, but if you are an IT Pro, this book gives you deeper insight into Windows PowerShell and ways it can be used.<\/p>\n<ul>\n<li>\n<p>Slice and dice text, XML, CSV, and JSON with ease<\/p>\n<\/li>\n<li>\n<p>Embed Windows PowerShell to provide scripting capabilities for your C# apps<\/p>\n<\/li>\n<li>\n<p>Create GUI applications five to ten times faster with less code<\/p>\n<\/li>\n<li>\n<p>Leverage Windows PowerShell&rsquo;s capabilities to work with the Internet<\/p>\n<\/li>\n<li>\n<p>Interact with DLLs and create objects, automatically display properties, and call methods in live interactive sessions<\/p>\n<\/li>\n<li>\n<p>Build domain-specific languages (DSLs) and vocabularies to express solutions more clearly<\/p>\n<\/li>\n<li>\n<p>Work with Microsoft Office via the Component Object Model (COM)<\/p>\n<\/li>\n<li>\n<p>Discover Windows PowerShell 3.0 features that are included in Windows&nbsp;8 and Windows Server&nbsp;2012<\/p>\n<\/li>\n<\/ul>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/29\/2019\/02\/3568.hsg-10-8-12-2.jpg\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/29\/2019\/02\/3568.hsg-10-8-12-2.jpg\" alt=\"Image of book cover\" title=\"Image of book cover\" \/><\/a><\/p>\n<p style=\"padding-left: 30px\"><i>Windows PowerShell for Developers<\/i>, First Edition <br \/> by Douglas Finke <br \/> ISBN-10: 1449322700<br \/> ISBN-13: 978-1449322700<br \/> <a href=\"http:\/\/shop.oreilly.com\/product\/0636920024491.do\" target=\"_blank\">http:\/\/shop.oreilly.com\/product\/0636920024491.do<\/a><br \/> Copyright 2012 Douglas Finke. All rights reserved. Printed in the United States of America. <br \/> Published by O&rsquo;Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472.<\/p>\n<p>Thanks for sharing this information from your book, Doug.<\/p>\n<p>I invite you to follow me on <a href=\"http:\/\/bit.ly\/scriptingguystwitter\" target=\"_blank\">Twitter<\/a> and <a href=\"http:\/\/bit.ly\/scriptingguysfacebook\" target=\"_blank\">Facebook<\/a>. If you have any questions, send email to me at <a href=\"mailto:scripter@microsoft.com\" target=\"_blank\">scripter@microsoft.com<\/a>, or post your questions on the <a href=\"http:\/\/bit.ly\/scriptingforum\" target=\"_blank\">Official Scripting Guys Forum<\/a>. See you tomorrow. Until then, peace.<\/p>\n<p><b>Ed Wilson, Microsoft Scripting Guy<\/b>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Summary: Windows PowerShell MVP, Doug Finke, discusses using a simple Windows PowerShell command to convert to or from JSON. Microsoft Scripting Guy, Ed Wilson, is here. Today we have guest blogger, Doug Finke. Microsoft Windows PowerShell MVP, Doug Finke is the author of Windows PowerShell for Developers. He works in New York City for Lab49, [&hellip;]<\/p>\n","protected":false},"author":596,"featured_media":87096,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[78,56,3,4,167,45,77],"class_list":["post-4856","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-scripting","tag-doug-finke","tag-guest-blogger","tag-scripting-guy","tag-scripting-techniques","tag-using-the-internet","tag-windows-powershell","tag-writing"],"acf":[],"blog_post_summary":"<p>Summary: Windows PowerShell MVP, Doug Finke, discusses using a simple Windows PowerShell command to convert to or from JSON. Microsoft Scripting Guy, Ed Wilson, is here. Today we have guest blogger, Doug Finke. Microsoft Windows PowerShell MVP, Doug Finke is the author of Windows PowerShell for Developers. He works in New York City for Lab49, [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/posts\/4856","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/users\/596"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/comments?post=4856"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/posts\/4856\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/media\/87096"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/media?parent=4856"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/categories?post=4856"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/tags?post=4856"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}