{"id":3819,"date":"2011-05-18T16:04:50","date_gmt":"2011-05-18T10:34:50","guid":{"rendered":"http:\/\/www.tothenew.com\/blog\/?p=3819"},"modified":"2016-12-19T15:16:37","modified_gmt":"2016-12-19T09:46:37","slug":"how-to-apply-liquibase-change-set-conditionally","status":"publish","type":"post","link":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/","title":{"rendered":"How to apply liquibase change set conditionally"},"content":{"rendered":"<p>In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command &#8220;grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml&#8221; which contained all the table creation changesets. We updated the dbCreate=&#8217;none&#8217; in all env. When we ran the application in test env, having the database in create-drop mode, it worked, but in other envs, which had database in &#8220;update&#8221; mode, it started failing. Now we wanted some hook to execute the creation changeset only if the tables did not exist.<br \/>\nWe just went through the liquibase site and we got the answer to our problem. The solution was in liquibase PRECONDITIONS. We added the preconditions to the changesets to check whether the table existed or not.<\/p>\n<p>[java]<br \/>\n&lt;changeSet author=&quot;uday (generated)&quot; id=&quot;1305002274717-1&quot;&gt;<br \/>\n    &lt;preConditions onFail=&quot;MARK_RAN&quot;&gt;<br \/>\n      &lt;not&gt;<br \/>\n        &lt;tableExists tableName=&quot;account&quot;\/&gt;<br \/>\n      &lt;\/not&gt;<br \/>\n    &lt;\/preConditions&gt;<br \/>\n    &lt;createTable tableName=&quot;account&quot;&gt;<br \/>\n      &lt;column autoIncrement=&quot;true&quot; name=&quot;id&quot; type=&quot;BIGINT&quot;&gt;<br \/>\n        &lt;constraints nullable=&quot;false&quot; primaryKey=&quot;true&quot;\/&gt;<br \/>\n      &lt;\/column&gt;<br \/>\n      &lt;column name=&quot;version&quot; type=&quot;BIGINT&quot;&gt;<br \/>\n        &lt;constraints nullable=&quot;false&quot;\/&gt;<br \/>\n      &lt;\/column&gt;<br \/>\n      &lt;column name=&quot;balance&quot; type=&quot;DECIMAL(19,2)&quot;&gt;<br \/>\n        &lt;constraints nullable=&quot;false&quot;\/&gt;<br \/>\n      &lt;\/column&gt;<br \/>\n      &lt;column name=&quot;date_created&quot; type=&quot;DATETIME&quot;&gt;<br \/>\n        &lt;constraints nullable=&quot;false&quot;\/&gt;<br \/>\n      &lt;\/column&gt;<br \/>\n      &lt;column name=&quot;last_updated&quot; type=&quot;DATETIME&quot;&gt;<br \/>\n        &lt;constraints nullable=&quot;false&quot;\/&gt;<br \/>\n      &lt;\/column&gt;<br \/>\n      &lt;column name=&quot;firstname&quot; type=&quot;VARCHAR(255)&quot;\/&gt;<br \/>\n    &lt;\/createTable&gt;<br \/>\n  &lt;\/changeSet&gt;<br \/>\n[\/java]<\/p>\n<p>In the above example the changeset will execute only if the precondition passes, if the condition fails you can specify what needs to be done. In our case we mark it as run so that liquibase marks it as being executed. You can do other things on fail event like HALT, CONTINUE, WARN,MARK_RAN.<br \/>\nThe documentation is quite good, you can find the examples of other changesets like constraints and indexes as well.<br \/>\nHope it helps<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command &#8220;grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml&#8221; which contained all the table creation changesets. We updated the dbCreate=&#8217;none&#8217; in all env. When we ran the [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":82,"footnotes":""},"categories":[7],"tags":[579,578,576,421,577],"class_list":["post-3819","post","type-post","status-publish","format-standard","hentry","category-grails","tag-conditional-changeset-execution-in-liquibase","tag-grails-liquibase-integration","tag-how-to-add-liquibase-in-middle-of-project","tag-liquibase","tag-liquibase-integration"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command &quot;grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml&quot; which contained all the table creation changesets. We updated the dbCreate=&#039;none&#039; in all env. When we ran the\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Uday Pratap Singh\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"TO THE NEW BLOG\" \/>\n\t\t<meta property=\"og:type\" content=\"blog\" \/>\n\t\t<meta property=\"og:title\" content=\"How to apply liquibase change set conditionally | TO THE NEW Blog\" \/>\n\t\t<meta property=\"og:description\" content=\"In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command &quot;grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml&quot; which contained all the table creation changesets. We updated the dbCreate=&#039;none&#039; in all env. When we ran the\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/www.tothenew.com\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/www.tothenew.com\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@tothenew\" \/>\n\t\t<meta name=\"twitter:title\" content=\"How to apply liquibase change set conditionally | TO THE NEW Blog\" \/>\n\t\t<meta name=\"twitter:description\" content=\"In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command &quot;grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml&quot; which contained all the table creation changesets. We updated the dbCreate=&#039;none&#039; in all env. When we ran the\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.tothenew.com\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#article\",\"name\":\"How to apply liquibase change set conditionally | TO THE NEW Blog\",\"headline\":\"How to apply liquibase change set conditionally\",\"author\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/uday\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\"},\"datePublished\":\"2011-05-18T16:04:50+05:30\",\"dateModified\":\"2016-12-19T15:16:37+05:30\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#webpage\"},\"articleSection\":\"Grails, conditional changeset execution in liquibase, grails liquibase integration, how to add liquibase in middle of project, liquibase, Liquibase integration\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.tothenew.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/grails\\\/#listItem\",\"name\":\"Grails\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/grails\\\/#listItem\",\"position\":2,\"name\":\"Grails\",\"item\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/grails\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#listItem\",\"name\":\"How to apply liquibase change set conditionally\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#listItem\",\"position\":3,\"name\":\"How to apply liquibase change set conditionally\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/grails\\\/#listItem\",\"name\":\"Grails\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\",\"name\":\"TO THE NEW Blog\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/uday\\\/#author\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/uday\\\/\",\"name\":\"Uday Pratap Singh\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#authorImage\",\"url\":\"https:\\\/\\\/newersworld-sf-static.tothenew.net\\\/prod\\\/profilePicFolder\\\/d4c98503-ff55-4112-8fc2-e3c4fcc6fc3a_282-Uday-Pratap-Singh-PROFILEPICTURE.jpeg\",\"width\":96,\"height\":96,\"caption\":\"Uday Pratap Singh\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#webpage\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/\",\"name\":\"How to apply liquibase change set conditionally | TO THE NEW Blog\",\"description\":\"In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command \\\"grails generate-changelog \\\/home\\\/uday\\\/projects\\\/projectName\\\/grails-app\\\/migrations\\\/changelog.xml\\\" which contained all the table creation changesets. We updated the dbCreate='none' in all env. When we ran the\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-apply-liquibase-change-set-conditionally\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/uday\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/uday\\\/#author\"},\"datePublished\":\"2011-05-18T16:04:50+05:30\",\"dateModified\":\"2016-12-19T15:16:37+05:30\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/\",\"name\":\"TO THE NEW Blog\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"How to apply liquibase change set conditionally | TO THE NEW Blog","description":"In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command \"grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml\" which contained all the table creation changesets. We updated the dbCreate='none' in all env. When we ran the","canonical_url":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#article","name":"How to apply liquibase change set conditionally | TO THE NEW Blog","headline":"How to apply liquibase change set conditionally","author":{"@id":"https:\/\/www.tothenew.com\/blog\/author\/uday\/#author"},"publisher":{"@id":"https:\/\/www.tothenew.com\/blog\/#organization"},"datePublished":"2011-05-18T16:04:50+05:30","dateModified":"2016-12-19T15:16:37+05:30","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#webpage"},"isPartOf":{"@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#webpage"},"articleSection":"Grails, conditional changeset execution in liquibase, grails liquibase integration, how to add liquibase in middle of project, liquibase, Liquibase integration"},{"@type":"BreadcrumbList","@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.tothenew.com\/blog#listItem","position":1,"name":"Home","item":"https:\/\/www.tothenew.com\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/www.tothenew.com\/blog\/category\/grails\/#listItem","name":"Grails"}},{"@type":"ListItem","@id":"https:\/\/www.tothenew.com\/blog\/category\/grails\/#listItem","position":2,"name":"Grails","item":"https:\/\/www.tothenew.com\/blog\/category\/grails\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#listItem","name":"How to apply liquibase change set conditionally"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.tothenew.com\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#listItem","position":3,"name":"How to apply liquibase change set conditionally","previousItem":{"@type":"ListItem","@id":"https:\/\/www.tothenew.com\/blog\/category\/grails\/#listItem","name":"Grails"}}]},{"@type":"Organization","@id":"https:\/\/www.tothenew.com\/blog\/#organization","name":"TO THE NEW Blog","url":"https:\/\/www.tothenew.com\/blog\/"},{"@type":"Person","@id":"https:\/\/www.tothenew.com\/blog\/author\/uday\/#author","url":"https:\/\/www.tothenew.com\/blog\/author\/uday\/","name":"Uday Pratap Singh","image":{"@type":"ImageObject","@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#authorImage","url":"https:\/\/newersworld-sf-static.tothenew.net\/prod\/profilePicFolder\/d4c98503-ff55-4112-8fc2-e3c4fcc6fc3a_282-Uday-Pratap-Singh-PROFILEPICTURE.jpeg","width":96,"height":96,"caption":"Uday Pratap Singh"}},{"@type":"WebPage","@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#webpage","url":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/","name":"How to apply liquibase change set conditionally | TO THE NEW Blog","description":"In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command \"grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml\" which contained all the table creation changesets. We updated the dbCreate='none' in all env. When we ran the","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.tothenew.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/#breadcrumblist"},"author":{"@id":"https:\/\/www.tothenew.com\/blog\/author\/uday\/#author"},"creator":{"@id":"https:\/\/www.tothenew.com\/blog\/author\/uday\/#author"},"datePublished":"2011-05-18T16:04:50+05:30","dateModified":"2016-12-19T15:16:37+05:30"},{"@type":"WebSite","@id":"https:\/\/www.tothenew.com\/blog\/#website","url":"https:\/\/www.tothenew.com\/blog\/","name":"TO THE NEW Blog","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.tothenew.com\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"TO THE NEW BLOG","og:type":"blog","og:title":"How to apply liquibase change set conditionally | TO THE NEW Blog","og:description":"In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command &quot;grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml&quot; which contained all the table creation changesets. We updated the dbCreate='none' in all env. When we ran the","og:url":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/","og:image":"https:\/\/www.tothenew.com\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png","og:image:secure_url":"https:\/\/www.tothenew.com\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png","twitter:card":"summary","twitter:site":"@tothenew","twitter:title":"How to apply liquibase change set conditionally | TO THE NEW Blog","twitter:description":"In our recent grails project, we were about to move to production so we decided to manage the database changes with liquibase. So we generated the changelog from development env by executing the command &quot;grails generate-changelog \/home\/uday\/projects\/projectName\/grails-app\/migrations\/changelog.xml&quot; which contained all the table creation changesets. We updated the dbCreate='none' in all env. When we ran the","twitter:image":"https:\/\/www.tothenew.com\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png"},"aioseo_meta_data":{"post_id":"3819","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":"","og_description":"","og_object_type":"blog","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":"","og_article_tags":"","twitter_use_og":false,"twitter_card":"summary","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2021-04-29 12:08:49","updated":"2024-02-29 08:22:32","focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.tothenew.com\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.tothenew.com\/blog\/category\/grails\/\" title=\"Grails\">Grails<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tHow to apply liquibase change set conditionally\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.tothenew.com\/blog"},{"label":"Grails","link":"https:\/\/www.tothenew.com\/blog\/category\/grails\/"},{"label":"How to apply liquibase change set conditionally","link":"https:\/\/www.tothenew.com\/blog\/how-to-apply-liquibase-change-set-conditionally\/"}],"_links":{"self":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/3819","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/comments?post=3819"}],"version-history":[{"count":0,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/3819\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/media?parent=3819"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/categories?post=3819"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/tags?post=3819"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}