{"id":4418,"date":"2025-09-12T14:20:25","date_gmt":"2025-09-12T14:20:25","guid":{"rendered":"https:\/\/www.creatingsmarthome.com\/?p=4418"},"modified":"2025-10-16T16:06:59","modified_gmt":"2025-10-16T16:06:59","slug":"home-assistant-migrating-to-the-official-nord-pool-integration","status":"publish","type":"post","link":"https:\/\/www.creatingsmarthome.com\/index.php\/2025\/09\/12\/home-assistant-migrating-to-the-official-nord-pool-integration\/","title":{"rendered":"Home Assistant: Migrating to the Official Nord Pool Integration"},"content":{"rendered":"\n<p>I&#8217;ve been a happy user of the Nord Pool custom component for a long time, and it has served me well! However, with Home Assistant recently introducing its own official Nord Pool integration, and a significant market change on the horizon, it&#8217;s time to make the switch.<\/p>\n\n\n\n<p>On October 1st, 2025, the Nord Pool market is transitioning to a 15-minute Market Time Unit (MTU). While the future of the custom component is uncertain after this change, the official Home Assistant integration has confirmed it will support the 15-minute MTU right out of the box. There might be a few hiccups during the transition, but having official support is a major advantage.<\/p>\n\n\n\n<p>In this post, I&#8217;ll walk you through the exact steps I took to migrate my system from the custom component to the official integration, ensuring my smart home stays ahead of the curve.<\/p>\n\n\n\n<p><em><strong>Note: If you are here for the AIO Energy Management, you can still use it with Nord Pool Custom integration &#8211; you don&#8217;t have to migrate to Official Nord Pool integration unless you want to<\/strong><\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Key Technical Differences<\/h2>\n\n\n\n<p>The biggest change between the two integrations is how they handle data. The official Nord Pool integration is built around&nbsp;<strong>services<\/strong>, while the custom component exposed everything as&nbsp;<strong>attributes<\/strong>&nbsp;on a sensor. This means that to get price data with the new integration, we need to actively call a service.<\/p>\n\n\n\n<p>Another major difference is that the official integration provides only the raw price data from Nord Pool (e.g., in \u20ac\/MWh for Finland) without taxes. The custom component, on the other hand, allowed you to include VAT and other additional costs directly in the sensor&#8217;s output. We&#8217;ll need to replicate this functionality using template sensors.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 1: Away With the Old, In With the New<\/h2>\n\n\n\n<p>Because the custom and official components share the same name (<code>nordpool<\/code>), we can&#8217;t have both installed simultaneously. This means the migration needs to be done in one go\u2014a &#8220;big bang&#8221; approach.<\/p>\n\n\n\n<p>Let&#8217;s get straight to it.<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Uninstall the Custom Component:<\/strong>&nbsp;Navigate to&nbsp;<strong>Settings &gt; Devices &amp; Services<\/strong>&nbsp;in Home Assistant, find your existing Nord Pool integration, and click the three dots to uninstall it.<\/li>\n\n\n\n<li><strong>Remove from HACS (if applicable):<\/strong>&nbsp;If you installed the custom component via HACS, you must also uninstall it from the HACS interface. This will properly remove the files from your&nbsp;<code>custom_components<\/code>&nbsp;folder. If you installed it manually, you&#8217;ll need to delete the&nbsp;<code>nordpool<\/code>&nbsp;directory from your&nbsp;<code>config\/custom_components<\/code>&nbsp;folder yourself.<\/li>\n\n\n\n<li><strong>Reboot Home Assistant:<\/strong>&nbsp;A full reboot is essential to ensure the old component is completely unloaded.<\/li>\n<\/ol>\n\n\n\n<p>Once your Home Assistant has rebooted, it&#8217;s time to install the official integration.<\/p>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li><strong>Install the Official Integration:<\/strong>&nbsp;Go to&nbsp;<strong>Settings &gt; Devices &amp; Services<\/strong>, click&nbsp;<strong>+ Add Integration<\/strong>, search for &#8220;Nord Pool,&#8221; and follow the prompts to configure it with your preferred settings.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Step 2: Find Your Configuration ID<\/h2>\n\n\n\n<p>With the new service-based approach, you&#8217;ll need a&nbsp;<code>config_entry<\/code>&nbsp;ID to tell Home Assistant which Nord Pool instance you want to get data from. Think of it as a replacement for the&nbsp;<code>entity_id<\/code>&nbsp;you might have used before.<\/p>\n\n\n\n<p>The easiest way to find this ID is:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Go to&nbsp;<strong>Developer Tools &gt; Actions<\/strong>.<\/li>\n\n\n\n<li>In the &#8220;Service&#8221; dropdown, select&nbsp;<code>Nord Pool: Get prices<\/code>.<\/li>\n\n\n\n<li>Choose your newly created config entry from the UI.<\/li>\n\n\n\n<li>Switch to&nbsp;<strong>YAML mode<\/strong>.<\/li>\n\n\n\n<li>Voila! The&nbsp;<code>config_entry<\/code>&nbsp;ID will be displayed. Copy this value for the next steps.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"577\" src=\"https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-07-at-12.39.31-1024x577.png\" alt=\"\" class=\"wp-image-4569\" srcset=\"https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-07-at-12.39.31-1024x577.png 1024w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-07-at-12.39.31-300x169.png 300w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-07-at-12.39.31-768x432.png 768w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-07-at-12.39.31-1536x865.png 1536w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-07-at-12.39.31-2048x1153.png 2048w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-07-at-12.39.31-1920x1081.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Step 3: Rebuilding the ApexCharts Price Graph<\/h2>\n\n\n\n<p>Since ApexCharts can&#8217;t call services directly to populate a graph, we need to create an intermediary: a template sensor that calls the Nord Pool service and stores the prices.<\/p>\n\n\n\n<p>The template sensor below does exactly that. It calls the service periodically to fetch today&#8217;s and tomorrow&#8217;s prices. Don&#8217;t worry about spamming the API; the integration caches the data locally, so frequent updates won&#8217;t cause excessive network traffic.<\/p>\n\n\n\n<p>This template also includes attributes for&nbsp;<code>tax<\/code>&nbsp;and&nbsp;<code>additional_cost<\/code>, making it easy to replicate the final price calculation you had with the custom component. Tax is added by multiplying original value (e.g. 25.5% = 1.255) and additional costs are added over that. So, if you your add tariffs and your tariffs needs to have VAT included remember to include as well into additional_costs. <br><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>template:\n  - triggers:\n      - trigger: time_pattern\n        minutes: \/1\n      - trigger: homeassistant\n        event: start\n    actions:\n      - action: nordpool.get_prices_for_date\n        data:\n          config_entry: 01K4QBH1H606SDS1V28KGR32K7\n          date: \"{{ now().date() }}\"\n          areas: FI\n          currency: EUR\n        response_variable: today_price\n      - action: nordpool.get_prices_for_date\n        data:\n          config_entry: 01K4QBH1H606SDS1V28KGR32K7\n          date: \"{{ now().date() + timedelta(days=1) }}\"\n          areas: FI\n          currency: EUR\n        response_variable: tomorrow_price\n    sensor:\n      - name: Electricity prices\n        unique_id: electricity_prices\n        unit_of_measurement: \"snt\/kWh\"\n        icon: mdi:cash\n        state: &gt;\n          {%- set region = (this.attributes.get('region', 'FI') | string) -%}\n          {%- set tax = (this.attributes.get('tax', 1.0) | float) -%}\n          {%- set additional_cost = (this.attributes.get('additional_cost', 0.0) | float) -%}\n\n          {% if (today_price is mapping) and (tomorrow_price is mapping) %}\n            {% set data = namespace(prices=&#091;]) %}\n            {% for state in today_price&#091;region] %}\n              {% set data.prices = data.prices + &#091;(((state.price\/10 | float)  * tax + additional_cost)) | round(3, default=0)] %}\n            {% endfor %}\n            {% for state in tomorrow_price&#091;region] %}\n              {% set data.prices = data.prices + &#091;(((state.price\/10 |&nbsp;float) * tax + additional_cost)) | round(3, default=0)] %}\n            {% endfor %}\n            {{min(data.prices)}}\n          {% else %}\n            unavailable\n          {% endif %}\n        attributes:\n          tomorrow_valid: &gt;\n            {%- set region = (this.attributes.get('region', 'FI') | string) -%}\n            {%- if (tomorrow_price is mapping) %}\n              {%- if tomorrow_price&#091;region] |&nbsp;list |&nbsp;count &gt; 0 -%}\n                {{ true |&nbsp;bool }}\n              {%- else %}\n                {{ false |&nbsp;bool }}\n              {%- endif %}\n            {%- else %}\n              {{ false |&nbsp;bool }}\n            {%- endif %}\n          data: &gt;\n            {%- set region = (this.attributes.get('region', 'FI') | string) -%}\n            {%- set tax = (this.attributes.get('tax', 1.0) | float) -%}\n            {%- set additional_cost = (this.attributes.get('additional_cost', 0.0) | float) -%}\n\n            {% if (today_price is mapping) and (tomorrow_price is mapping) %}\n            {% set data = namespace(prices=&#091;]) %}\n              {% for state in today_price&#091;region] %}\n                {% set local_start = as_datetime(state.start).astimezone().strftime('%Y-%m-%d %H:%M:%S') %}\n                {% set local_end = as_datetime(state.end).astimezone().strftime('%Y-%m-%d %H:%M:%S') %}\n                {% set data.prices = data.prices + &#091;{'start':local_start, 'end':local_end, 'price': (((state.price\/10 |&nbsp;float) * tax + additional_cost)) | round(3, default=0)}] %}\n              {% endfor %}\n              {% for state in tomorrow_price&#091;region] %}\n                {% set local_start = as_datetime(state.start).astimezone().strftime('%Y-%m-%d %H:%M:%S') %}\n                {% set local_end = as_datetime(state.end).astimezone().strftime('%Y-%m-%d %H:%M:%S') %}\n                {% set data.prices = data.prices + &#091;{'start':local_start, 'end':local_end, 'price': (((state.price\/10 | float) * tax + additional_cost)) | round(3, default=0)}] %}\n              {% endfor %}\n              {{data.prices}}\n            {% else %}\n              &#091;]\n            {% endif %}\n          tax: 1.255\n          additional_cost: 0\n          region: FI<\/code><\/pre>\n\n\n\n<p>After creating this sensor and reloading your template entities (<code>Developer Tools &gt; YAML &gt; Template Entities<\/code>), you&#8217;ll have&nbsp;<code>sensor.electricity_prices<\/code>&nbsp;ready to use. Here is the ApexCharts card configuration, which is very similar to the old setup:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>type: custom:apexcharts-card\nexperimental:\n  color_threshold: true\nheader:\n  show: true\n  title: NordPool electricity prices (today\/tomorrow)\n  show_states: true\n  colorize_states: true\ngraph_span: 48h\nspan:\n  end: day\n  offset: +1d\nnow:\n  show: true\n  label: Now\nseries:\n  - entity: sensor.electricity_prices\n    type: column\n    show:\n      extremas: true\n      in_header: before_now\n    float_precision: 3\n    data_generator: |\n      return entity.attributes.data.map((start, index) =&gt; {\n        return &#091;new Date(start&#091;\"start\"]).getTime(), entity.attributes.data&#091;index]&#091;\"price\"]];\n      });\n    color_threshold:\n      - value: 0\n        color: green\n      - value: 10\n        color: orange\n      - value: 30\n        color: red<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"858\" data-id=\"4595\" src=\"https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.23.38-1024x858.png\" alt=\"\" class=\"wp-image-4595\" srcset=\"https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.23.38-1024x858.png 1024w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.23.38-300x251.png 300w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.23.38-768x643.png 768w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.23.38.png 1036w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"846\" data-id=\"4598\" src=\"https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.25.39.png\" alt=\"\" class=\"wp-image-4598\" srcset=\"https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.25.39.png 1024w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.25.39-300x248.png 300w, https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-09-12-at-14.25.39-768x635.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Step 4: Updating the Energy Dashboard<\/h2>\n\n\n\n<p>The official integration creates a sensor for the current price automatically (e.g.,&nbsp;<code>sensor.nord_pool_fi_current_price<\/code>), which is perfect for the Energy Dashboard. However, this sensor shows the raw price. If you want your Energy Dashboard costs to reflect VAT, you&#8217;ll need another simple template sensor.<\/p>\n\n\n\n<p>This one adds the 25.5% VAT to the raw price.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>template:\n  - sensor:\n      name: Nord Pool current price with taxes\n      unique_id: nordpool_current_price_with_taxes\n      unit_of_measurement: \"snt\/kWh\"\n      state: &gt;\n        {{ (states('sensor.nord_pool_fi_current_price') | float * 100 * 1.255) | round(3) }}<\/code><\/pre>\n\n\n\n<p>You can then use this new&nbsp;<code>sensor.nordpool_current_price_with_taxes<\/code>&nbsp;in your Energy Dashboard settings for real-time costs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 5: Configuring AIO Energy Management<\/h2>\n\n\n\n<p>I use the&nbsp;<a href=\"https:\/\/github.com\/kotope\/aio_energy_management\" target=\"_blank\" rel=\"noreferrer noopener\">AIO Energy Management<\/a>&nbsp;integration to calculate the cheapest hours of the day for running high-consumption devices. Version 0.5.0 introduced support for the 15-minute MTU and, crucially, price templating. This is necessary because the raw price from the Nord Pool service doesn&#8217;t include taxes or fees.<\/p>\n\n\n\n<p>In my configuration below, I use the&nbsp;<code>price_modifications<\/code>&nbsp;template to transform the raw price from \u20ac\/MWh into cents\/kWh (<code>snt\/kWh<\/code>) and add the 25.5% VAT.<\/p>\n\n\n\n<p>Here is my updated configuration for AIO Energy Management for all my devices (water heater, outdoor spa and garage heating):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aio_energy_management:\n    calendar:\n        unique_id: energy_management_calendar\n        name: Energy Management Calendar\n    cheapest_hours:\n      - nordpool_official_config_entry: 01K4QBH1H606SDS1V28KGR32K7\n        unique_id: cheapest_hours_water_boiler\n        name: Cheapest Hours Water Boiler\n        first_hour: 21\n        last_hour: 12\n        starting_today: true\n        number_of_hours: 6\n        sequential: false\n        failsafe_starting_hour: 1\n        price_modifications: &gt;\n          {%- set as_snt = price \/ 10.0 %}\n          {%- set with_taxes = (as_snt * 1.255) | float %}\n          {{ with_taxes }}\n      - nordpool_official_config_entry: 01K4QBH1H606SDS1V28KGR32K7\n        unique_id: cheapest_hours_hot_tub\n        name: Cheapest Hours Hot Tub\n        first_hour: 0\n        last_hour: 23\n        starting_today: false\n        number_of_hours: 5\n        sequential: false\n        max_price: 5.0\n        price_modifications: &gt;\n          {%- set as_snt = price \/ 10.0 %}\n          {%- set with_taxes = (as_snt * 1.255) | float %}\n          {{ with_taxes }}\n      - nordpool_official_config_entry: 01K4QBH1H606SDS1V28KGR32K7\n        unique_id: cheapest_hours_garage_heating\n        name: Cheapest Hours Garage Heating\n        first_hour: 20\n        last_hour: 14\n        starting_today: true\n        number_of_hours: sensor.garage_heating_number_of_hour\n        sequential: false\n        trigger_hour: 20\n        failsafe_starting_hour: 1\n        price_modifications: &gt;\n          {%- set as_snt = price \/ 10.0 %}\n          {%- set with_taxes = (as_snt * 1.255) | float %}\n          {{ with_taxes }}\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Final Steps and Automations<\/h2>\n\n\n\n<p>I also had many automations that relied on the old custom component, and as expected, they all broke during this update. The simplest ones just needed an entity ID change, but others\u2014like <a href=\"https:\/\/www.creatingsmarthome.com\/index.php\/2025\/02\/04\/home-assistant-sending-tomorrows-flexible-energy-prices-through-a-push-notification\/\">energy price push notifications<\/a> or automations that <a href=\"https:\/\/www.creatingsmarthome.com\/index.php\/2024\/12\/01\/home-assistant-saving-money-with-ev-charging-suggestions-using-go-e-chargers\/\">change my EV charger&#8217;s color based on price<\/a>\u2014required more significant changes to work with the new service-based approach.<\/p>\n\n\n\n<p>I won&#8217;t be diving into specific automation examples in this post, but if that&#8217;s something you&#8217;d like to see, let me know in the comments, and I might write a follow-up article!<\/p>\n\n\n<div class=\"wp-block-ub-divider ub_divider ub-divider-orientation-horizontal\" id=\"ub_divider_1e68c93c-0e2b-4282-ad99-7e7ca437c823\"><div class=\"ub_divider_wrapper\" style=\"position: relative; margin-bottom: 2px; width: 100%; height: 2px; \" data-divider-alignment=\"center\"><div class=\"ub_divider_line\" style=\"border-top: 2px solid #ccc; margin-top: 2px; \"><\/div><\/div><\/div>\n\n<div style=\"border: 3px dashed #abb8c3; border-radius: 0%; background-color: inherit; \" class=\"ub-styled-box ub-bordered-box wp-block-ub-styled-box\" id=\"ub-styled-box-b20fbc67-a33d-41be-82aa-3d0a9de066da\">\n<p id=\"ub-styled-box-bordered-content-dd36dbb9-2869-4a0b-9bd5-4ff0d5e2d4ac\"><h5 class=\"wp-block-heading has-text-align-center\">Did you find this guide helpful? You can keep the blog going by bidding me a coffee!<\/h5>\r\n<center>\r\n<script type=\"text\/javascript\" src=\"https:\/\/cdnjs.buymeacoffee.com\/1.0.0\/button.prod.min.js\" data-name=\"bmc-button\" data-slug=\"tokorhon\" data-color=\"#FFDD00\" data-emoji=\"\"  data-font=\"Cookie\" data-text=\"Buy me a coffee\" data-outline-color=\"#000000\" data-font-color=\"#000000\" data-coffee-color=\"#ffffff\" ><\/script>\r\n<\/center><\/p>\n\n\n<\/div>","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been a happy user of the Nord Pool custom component for a long time, and it has served me well! However, with Home Assistant&hellip;<\/p>\n","protected":false},"author":1,"featured_media":4602,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[3,100],"tags":[401,105,224,106,7,218],"class_list":["post-4418","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-guide","category-home-assistant","tag-aio-energy-management","tag-automation","tag-cheapest-hours","tag-energy-saving","tag-home-assistant","tag-nord-pool","has-post-thumbnail-archive"],"acf":[],"featured_image_src":"https:\/\/www.creatingsmarthome.com\/wp-content\/uploads\/2025\/09\/nord_pool_integration.jpg","author_info":{"display_name":"Toni","author_link":"https:\/\/www.creatingsmarthome.com\/index.php\/author\/topsy\/"},"_links":{"self":[{"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/posts\/4418","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/comments?post=4418"}],"version-history":[{"count":53,"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/posts\/4418\/revisions"}],"predecessor-version":[{"id":4630,"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/posts\/4418\/revisions\/4630"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/media\/4602"}],"wp:attachment":[{"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/media?parent=4418"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/categories?post=4418"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.creatingsmarthome.com\/index.php\/wp-json\/wp\/v2\/tags?post=4418"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}