{"id":4690,"date":"2022-02-03T14:20:05","date_gmt":"2022-02-03T12:20:05","guid":{"rendered":"https:\/\/www.msb365.blog\/?p=4690"},"modified":"2023-06-23T13:01:07","modified_gmt":"2023-06-23T11:01:07","slug":"powershell","status":"publish","type":"post","link":"https:\/\/www.msb365.blog\/?p=4690","title":{"rendered":"PowerShell Script for creating License Groups including assignments"},"content":{"rendered":"<p>Since I rely heavily on standardization for my clients, I have created a new script that I would like to share with you here.<br \/>\nYou can find the GitHub link at the end of this article.<\/p>\n<p>Why does it make sense to create and manage licence groups in a standardized and automated way?<\/p>\n<p>There are several reasons: One of them is that the landscape looks the same or similar when looking after several customers.<\/p>\n<p>On the other hand, this is faster and the error rate when creating and assigning licences is practically eliminated.<br \/>\nThe aim of this script is to create the most commonly used licence groups on-premise, then synchronize them in the direction of Azure Active Directory and automatically carry out the corresponding licence assignment.<\/p>\n<p>It is important that the required licences are already available in the M365 tenant before this script is executed.<br \/>\nHere is the documentation on how this script works:<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_00.png\"><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone size-full wp-image-4695\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_00.png\" alt=\"\" width=\"903\" height=\"642\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_00.png 903w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_00-300x213.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_00-768x546.png 768w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_00-600x427.png 600w\" sizes=\"(max-width: 903px) 100vw, 903px\" \/><\/a><\/td>\n<td width=\"209\">As already mentioned, the required licences must already be available in the tenant.<\/p>\n<p>Furthermore, it must be ensured in advance that the OU where the licence groups are to be created is already preconfigured in the Azure AD connect.<\/p>\n<p>\u00a0<\/p>\n<p>Once these two points have been prepared, the script can begin.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_01.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-4696\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_01.png\" alt=\"\" width=\"938\" height=\"473\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_01.png 938w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_01-300x151.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_01-768x387.png 768w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_01-600x303.png 600w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_01-905x456.png 905w\" sizes=\"(max-width: 938px) 100vw, 938px\" \/><\/a><\/td>\n<td width=\"209\">After executing the script, it first checks whether the Active Directory module is already present. Since I recommend executing this script on a domain controller, there should be no problems here.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_02.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-4698\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_02.png\" alt=\"\" width=\"1307\" height=\"37\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_02.png 1307w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_02-300x8.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_02-1024x29.png 1024w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_02-768x22.png 768w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_02-600x17.png 600w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_02-905x26.png 905w\" sizes=\"(max-width: 1307px) 100vw, 1307px\" \/><\/a><\/td>\n<td width=\"209\">The next step is to set the only variable. This is the OU path where the licence groups are to be created. How to enter this variable is shown in yellow as an example in the prompt.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_03.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4699\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_03.png\" alt=\"\" width=\"567\" height=\"486\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_03.png 567w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_03-300x257.png 300w\" sizes=\"(max-width: 567px) 100vw, 567px\" \/><\/a><\/td>\n<td width=\"209\">Now the licence groups are created on the on-premise Active Directory. As shown in the picture, it can happen that certain groups cannot be created. These are highlighted in colour.<\/p>\n<p>\u00a0<\/p>\n<p>The reasons why this is the case must be analysed accordingly. In this example, the reason is that these groups already exist.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_04.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4700\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_04.png\" alt=\"\" width=\"759\" height=\"423\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_04.png 759w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_04-300x167.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_04-600x334.png 600w\" sizes=\"(max-width: 759px) 100vw, 759px\" \/><\/a><\/td>\n<td width=\"209\">After the creation of the groups is completed, a summary is shown of which of the groups have actually been created.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_05.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4701\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_05.png\" alt=\"\" width=\"562\" height=\"171\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_05.png 562w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_05-300x91.png 300w\" sizes=\"(max-width: 562px) 100vw, 562px\" \/><\/a><\/td>\n<td width=\"209\">The next step is to try to run an Azure AD sync.<\/p>\n<p>\u00a0<\/p>\n<p>If this is successful, we get a message that looks like this screenshot.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_06.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4702\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_06.png\" alt=\"\" width=\"587\" height=\"65\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_06.png 587w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_06-300x33.png 300w\" sizes=\"(max-width: 587px) 100vw, 587px\" \/><\/a><\/td>\n<td width=\"209\">If there is no Azure AD connect installed on the system where the script is executed, this message will be displayed.<\/p>\n<p>This means that either a manual sync must be initiated or we must wait until the autosync has been performed before we can continue.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_07.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4703\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_07.png\" alt=\"\" width=\"495\" height=\"49\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_07.png 495w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_07-300x30.png 300w\" sizes=\"(max-width: 495px) 100vw, 495px\" \/><\/a><\/td>\n<td width=\"209\">After the sync between on-premise and the Azure Active Directory has been successfully completed, we now have to log in to the Azure Active Directory via PowerShell.<\/p>\n<p>\u00a0<\/p>\n<p>This script checks whether the corresponding PowerShell module is installed, if this is not the case, the module is installed first before continuing.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_08.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4704\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_08.png\" alt=\"\" width=\"681\" height=\"671\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_08.png 681w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_08-300x296.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_08-600x591.png 600w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_08-100x100.png 100w\" sizes=\"(max-width: 681px) 100vw, 681px\" \/><\/a><\/td>\n<td width=\"209\">Then we have to log in to the module with the appropriate credentials.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_09.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4705\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_09.png\" alt=\"\" width=\"613\" height=\"714\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_09.png 613w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_09-258x300.png 258w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_09-600x699.png 600w\" sizes=\"(max-width: 613px) 100vw, 613px\" \/><\/a><\/td>\n<td width=\"209\">The same process as for the Azure Active Directory PowerShell module is also carried out for the second module. This is the Azure Licensing Module. If this is not available, it is installed first and then we can log in.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_10.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4706\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_10.png\" alt=\"\" width=\"1165\" height=\"124\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_10.png 1165w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_10-300x32.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_10-1024x109.png 1024w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_10-768x82.png 768w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_10-600x64.png 600w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_10-905x96.png 905w\" sizes=\"(max-width: 1165px) 100vw, 1165px\" \/><\/a><\/td>\n<td width=\"209\">Now the script checks which licences are available in the tenant and links them to the corresponding licence group that was previously created and synced on-premise.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_11.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4707\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_11.png\" alt=\"\" width=\"728\" height=\"134\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_11.png 728w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_11-300x55.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_11-600x110.png 600w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><\/a><\/td>\n<td width=\"209\">Afterwards, the script points out again that assignments have only been made for those groups that also have a corresponding licence.<\/p>\n<p>It also refers to a corresponding Microsoft Technet article.<\/p>\n<p>\u00a0<\/p>\n<p>This article can be opened directly from the script. Select \u201cY\u201d if you want to, or \u201cN\u201d if you do not want to.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4708\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12.png\" alt=\"\" width=\"1383\" height=\"751\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12.png 1383w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12-300x163.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12-1024x556.png 1024w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12-768x417.png 768w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12-600x326.png 600w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12-905x491.png 905w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_12-1320x717.png 1320w\" sizes=\"(max-width: 1383px) 100vw, 1383px\" \/><\/a><\/td>\n<td width=\"209\">If we continue with the selection \u201cY\u201d, the corresponding Technet link from Microsoft is called up.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_13.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4709\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_13.png\" alt=\"\" width=\"429\" height=\"44\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_13.png 429w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_13-300x31.png 300w\" sizes=\"(max-width: 429px) 100vw, 429px\" \/><\/a><\/td>\n<td width=\"209\">After that, the script is complete.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_14.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4710\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_14.png\" alt=\"\" width=\"1217\" height=\"827\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_14.png 1217w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_14-300x204.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_14-1024x696.png 1024w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_14-768x522.png 768w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_14-600x408.png 600w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_14-905x615.png 905w\" sizes=\"(max-width: 1217px) 100vw, 1217px\" \/><\/a><\/td>\n<td width=\"209\">As a review, we see the created groups with the corresponding description in the on-premise Active Directory. Here we can now add our users to assign a corresponding licence.<\/td>\n<\/tr>\n<tr>\n<td width=\"392\"><a href=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-4711\" src=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15.png\" alt=\"\" width=\"1410\" height=\"848\" srcset=\"https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15.png 1410w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15-300x180.png 300w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15-1024x616.png 1024w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15-768x462.png 768w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15-600x361.png 600w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15-905x544.png 905w, https:\/\/msb365.abstergo.ch\/wp-content\/uploads\/2022\/02\/SSC_15-1320x794.png 1320w\" sizes=\"(max-width: 1410px) 100vw, 1410px\" \/><\/a><\/td>\n<td width=\"209\">Also on the Azure Active Directory page we see the corresponding synced groups.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u00a0<\/p>\n<p>I hope this script helps you to take another step towards automation.<\/p>\n<p>However, I recommend that you run this script in a LAB the first time you use it. You have all rights to adapt and reproduce this script for your own use. However, you do not have the right to sell this script to third parties.<\/p>\n<p>\u00a0<\/p>\n<blockquote><p>You can find the script here on my <a href=\"https:\/\/github.com\/MSB365\/Microsoft-Azure-Create-LicenseGroups\/blob\/main\/Create-LicenseGroups.ps1\" target=\"_blank\" rel=\"noopener\"><strong>GitHub<\/strong><\/a> page.<\/p><\/blockquote>\n<p>\u00a0<\/p>\n<p>Have fun with it\u2026<\/p>\n<p>\ud83d\ude42<\/p>\n<p>\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Since I rely heavily on standardization for my clients, I have created a new script that I would like to share with you here. You can find the GitHub link at the end of this article. Why does it make sense to create and manage licence groups in a standardized and automated way? There are [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4692,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[685,12,1923,3],"tags":[],"class_list":["post-4690","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-active-directory","category-azure","category-microsoft-365","category-powershell"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.msb365.blog\/index.php?rest_route=\/wp\/v2\/posts\/4690","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.msb365.blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.msb365.blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.msb365.blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.msb365.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4690"}],"version-history":[{"count":6,"href":"https:\/\/www.msb365.blog\/index.php?rest_route=\/wp\/v2\/posts\/4690\/revisions"}],"predecessor-version":[{"id":4714,"href":"https:\/\/www.msb365.blog\/index.php?rest_route=\/wp\/v2\/posts\/4690\/revisions\/4714"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.msb365.blog\/index.php?rest_route=\/wp\/v2\/media\/4692"}],"wp:attachment":[{"href":"https:\/\/www.msb365.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4690"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.msb365.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4690"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.msb365.blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4690"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}