{"id":2377,"date":"2014-04-30T11:00:38","date_gmt":"2014-04-30T15:00:38","guid":{"rendered":"http:\/\/sqlity.net\/en\/?p=2377"},"modified":"2014-11-13T13:39:32","modified_gmt":"2014-11-13T18:39:32","slug":"pfs","status":"publish","type":"post","link":"https:\/\/sqlity.net\/en\/2377\/pfs\/","title":{"rendered":"PFS Pages: How SQL Server tracks &#8220;Page Free Space&#8221;"},"content":{"rendered":"<div>\n<h3>Introduction<\/h3>\n<p>\n<a href=\"http:\/\/sqlity.net\/en\/2351\/gam\/\">GAM<\/a> and <a href=\"http:\/\/sqlity.net\/en\/2364\/sgam\/\">SGAM<\/a> pages contain information about the allocation status of extents. They both however do not tell us anything about how full single pages are. That information is provided by another page type, the Page Free Space or PFS pages.\n<\/p>\n<h3>Page Free Space (PFS) pages<\/h3>\n<p>\nA PFS page does not contain a bitmap like GAM and SGAM pages. Instead, it contains a byte-map. Each page in a database file is associated with a single byte in one of the PFS pages. The byte contains information about how much space is still available on the page as well as a few status bits:\n<\/p>\n<ul>\n<li>Bit 0 is unused.<\/li>\n<li>Bit 1 is set if the page is allocated<\/li>\n<li>Bit 2 is set if the page is part of a mixed extent<\/li>\n<li>Bit 3 is set if the page itself is an IAM page<\/li>\n<li>Bit 4 is set if the page contains ghost records<\/li>\n<li>Bits 5 - 7 show how full the page is<\/li>\n<\/ul>\n<p>\nBit 1 identifies for example unallocated pages that are part of an allocated (or mixed) extent. Bit 2 is set for all pages that are part of a mixed extent. Bit 3 allows SQL Server to identify IAM pages without reading the page itself. Bit 4 finally indicates that the page contains logically deleted records that have not yet been cleaned up by the <a href=\"http:\/\/www.sqlskills.com\/blogs\/paul\/inside-the-storage-engine-ghost-cleanup-in-depth\/\" target=\"sqlskills\">ghost cleanup task<\/a>.\n<\/p>\n<p>\nPossible values for bits 5 - 7 are:\n<\/p>\n<ul>\n<li>000: The page is empty.<\/li>\n<li>001: The page is between 1% and 50% full.<\/li>\n<li>010: The page is between 51% and 80% full.<\/li>\n<li>011: The page is between 81% and 95% full.<\/li>\n<li>100: The page is between 96% and 100% full.<\/li>\n<\/ul>\n<p>\nOther possible values for those three bits are not used.\n<\/p>\n<h3>PFS Interval<\/h3>\n<p>\nA PFS page is of type 11. 8088 bytes of the page make up the byte-map. That means that a new PFS page is required every 8088 pages. A section of 8088 pages is therefore called a PFS Interval. The first PFS page is page 1 in all SQL Server database files. It covers pages 0 to 8087. After that, the first page of each PFS interval contains the PFS page for that interval: 8088, 16176, 24264 and so on.\n<\/p>\n<h3>Example PFS Page<\/h3>\n<p>\n<span class=\"tt\">DBCC PAGE<\/span> with mode <span class=\"tt\">3<\/span> neatly prepares the content of PFS pages in an easily readable table format.\n<\/p>\n<div>\n[sql]\nDBCC TRACEON(3604);<br \/>\nDBCC PAGE(0,1,1,3);<br \/>\n[\/sql]\n<\/div>\n<p>\nExecuting these statements will produce a result similar to the following:\n <\/p>\n<p>\n<a href=\"http:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg\" alt=\"A PFS (Page Free Space) Example.\" title=\"A PFS (Page Free Space) Example.\" width=\"816\" height=\"483\" class=\"aligncenter size-full wp-image-2378\" srcset=\"https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg 816w, https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example-300x177.jpg 300w, https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example-150x88.jpg 150w\" sizes=\"auto, (max-width: 816px) 100vw, 816px\" \/><\/a>\n<\/p>\n<p>\nThe pages are grouped into ranges of pages with equal bit values. The space used bits are translated into the upper boundary of the interval they represent. E.g. <span class=\"tt\">010<\/span> which represent 51% to 80% full is shown as <span class=\"tt\">80_PCT_FULL<\/span>.  The other bits are spelled out. IAM pages for example show the text <span class=\"tt\">IAM Page<\/span>.\n<\/p>\n<h3>Summary<\/h3>\n<p>\nSQL Server uses PFS pages to track the amount of space still available on each page. In addition, each page has four status bits that are also stored on the PFS pages.\n<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>PFS pages contain information about the free space available on all pages in a database file. They contain one byte per page that also holds four additional status bits. Read on to discover how to interpret the PFS data.<\/p>\n<p> <a href=\"https:\/\/sqlity.net\/en\/2377\/pfs\/\">[more&#8230;]<\/a><\/p>\n","protected":false},"author":3,"featured_media":2378,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[5,27,14,105],"tags":[111,158,155,107,176,174,177,175,15,108,109],"class_list":["post-2377","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-general","category-series","category-sql-server-internals","category-storage-wednesday","tag-dbcc-page","tag-gam","tag-iam-page","tag-page","tag-page-free-space","tag-pfs","tag-pfs-interval","tag-pfs-page","tag-sql-server","tag-storage","tag-storage-engine"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PFS Pages: How SQL Server tracks &quot;Page Free Space&quot; - sqlity.net<\/title>\n<meta name=\"description\" content=\"PFS pages contain information about the free space available on all pages in a database file. They contain 1 byte per page that also holds 4 status bits.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sqlity.net\/en\/2377\/pfs\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PFS Pages: How SQL Server tracks &quot;Page Free Space&quot; - sqlity.net\" \/>\n<meta property=\"og:description\" content=\"PFS pages contain information about the free space available on all pages in a database file. They contain 1 byte per page that also holds 4 status bits.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sqlity.net\/en\/2377\/pfs\/\" \/>\n<meta property=\"og:site_name\" content=\"sqlity.net\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/sqlity.net\" \/>\n<meta property=\"article:published_time\" content=\"2014-04-30T15:00:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2014-11-13T18:39:32+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"816\" \/>\n\t<meta property=\"og:image:height\" content=\"483\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Sebastian Meine\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@sqlity\" \/>\n<meta name=\"twitter:site\" content=\"@sqlity\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sebastian Meine\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/\"},\"author\":{\"name\":\"Sebastian Meine\",\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/#\\\/schema\\\/person\\\/bcffd8c572bc2f1bd10fdba80135e53c\"},\"headline\":\"PFS Pages: How SQL Server tracks &#8220;Page Free Space&#8221;\",\"datePublished\":\"2014-04-30T15:00:38+00:00\",\"dateModified\":\"2014-11-13T18:39:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/\"},\"wordCount\":476,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sqlity.net\\\/wp-content\\\/uploads\\\/2014\\\/04\\\/Page_Free_Space_Example.jpg\",\"keywords\":[\"DBCC PAGE\",\"GAM\",\"IAM page\",\"page\",\"Page Free Space\",\"PFS\",\"PFS Interval\",\"PFS page\",\"SQL Server\",\"storage\",\"storage engine\"],\"articleSection\":[\"General\",\"Series\",\"SQL Server Internals\",\"Storage Wednesday\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/\",\"url\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/\",\"name\":\"PFS Pages: How SQL Server tracks \\\"Page Free Space\\\" - sqlity.net\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sqlity.net\\\/wp-content\\\/uploads\\\/2014\\\/04\\\/Page_Free_Space_Example.jpg\",\"datePublished\":\"2014-04-30T15:00:38+00:00\",\"dateModified\":\"2014-11-13T18:39:32+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/#\\\/schema\\\/person\\\/bcffd8c572bc2f1bd10fdba80135e53c\"},\"description\":\"PFS pages contain information about the free space available on all pages in a database file. They contain 1 byte per page that also holds 4 status bits.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/#primaryimage\",\"url\":\"https:\\\/\\\/sqlity.net\\\/wp-content\\\/uploads\\\/2014\\\/04\\\/Page_Free_Space_Example.jpg\",\"contentUrl\":\"https:\\\/\\\/sqlity.net\\\/wp-content\\\/uploads\\\/2014\\\/04\\\/Page_Free_Space_Example.jpg\",\"width\":816,\"height\":483,\"caption\":\"A PFS (Page Free Space) Example.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/2377\\\/pfs\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/sqlity.net\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PFS Pages: How SQL Server tracks &#8220;Page Free Space&#8221;\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/sqlity.net\\\/en\\\/\",\"name\":\"sqlity.net\",\"description\":\"Quality for SQL\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/sqlity.net\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/sqlity.net\\\/en\\\/#\\\/schema\\\/person\\\/bcffd8c572bc2f1bd10fdba80135e53c\",\"name\":\"Sebastian Meine\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4ab0a6d02dd494849a584a2c3c8bc3bdcef1d0aa5f87e98bf905dbdb9ad2ce3a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4ab0a6d02dd494849a584a2c3c8bc3bdcef1d0aa5f87e98bf905dbdb9ad2ce3a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4ab0a6d02dd494849a584a2c3c8bc3bdcef1d0aa5f87e98bf905dbdb9ad2ce3a?s=96&d=mm&r=g\",\"caption\":\"Sebastian Meine\"},\"sameAs\":[\"http:\\\/\\\/sqlity.net\",\"https:\\\/\\\/x.com\\\/sqlity\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PFS Pages: How SQL Server tracks \"Page Free Space\" - sqlity.net","description":"PFS pages contain information about the free space available on all pages in a database file. They contain 1 byte per page that also holds 4 status bits.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/sqlity.net\/en\/2377\/pfs\/","og_locale":"en_US","og_type":"article","og_title":"PFS Pages: How SQL Server tracks \"Page Free Space\" - sqlity.net","og_description":"PFS pages contain information about the free space available on all pages in a database file. They contain 1 byte per page that also holds 4 status bits.","og_url":"https:\/\/sqlity.net\/en\/2377\/pfs\/","og_site_name":"sqlity.net","article_publisher":"https:\/\/www.facebook.com\/sqlity.net","article_published_time":"2014-04-30T15:00:38+00:00","article_modified_time":"2014-11-13T18:39:32+00:00","og_image":[{"width":816,"height":483,"url":"https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg","type":"image\/jpeg"}],"author":"Sebastian Meine","twitter_card":"summary_large_image","twitter_creator":"@sqlity","twitter_site":"@sqlity","twitter_misc":{"Written by":"Sebastian Meine","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/#article","isPartOf":{"@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/"},"author":{"name":"Sebastian Meine","@id":"https:\/\/sqlity.net\/en\/#\/schema\/person\/bcffd8c572bc2f1bd10fdba80135e53c"},"headline":"PFS Pages: How SQL Server tracks &#8220;Page Free Space&#8221;","datePublished":"2014-04-30T15:00:38+00:00","dateModified":"2014-11-13T18:39:32+00:00","mainEntityOfPage":{"@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/"},"wordCount":476,"commentCount":0,"image":{"@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/#primaryimage"},"thumbnailUrl":"https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg","keywords":["DBCC PAGE","GAM","IAM page","page","Page Free Space","PFS","PFS Interval","PFS page","SQL Server","storage","storage engine"],"articleSection":["General","Series","SQL Server Internals","Storage Wednesday"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/sqlity.net\/en\/2377\/pfs\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/","url":"https:\/\/sqlity.net\/en\/2377\/pfs\/","name":"PFS Pages: How SQL Server tracks \"Page Free Space\" - sqlity.net","isPartOf":{"@id":"https:\/\/sqlity.net\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/#primaryimage"},"image":{"@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/#primaryimage"},"thumbnailUrl":"https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg","datePublished":"2014-04-30T15:00:38+00:00","dateModified":"2014-11-13T18:39:32+00:00","author":{"@id":"https:\/\/sqlity.net\/en\/#\/schema\/person\/bcffd8c572bc2f1bd10fdba80135e53c"},"description":"PFS pages contain information about the free space available on all pages in a database file. They contain 1 byte per page that also holds 4 status bits.","breadcrumb":{"@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sqlity.net\/en\/2377\/pfs\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/#primaryimage","url":"https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg","contentUrl":"https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg","width":816,"height":483,"caption":"A PFS (Page Free Space) Example."},{"@type":"BreadcrumbList","@id":"https:\/\/sqlity.net\/en\/2377\/pfs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/sqlity.net\/en\/"},{"@type":"ListItem","position":2,"name":"PFS Pages: How SQL Server tracks &#8220;Page Free Space&#8221;"}]},{"@type":"WebSite","@id":"https:\/\/sqlity.net\/en\/#website","url":"https:\/\/sqlity.net\/en\/","name":"sqlity.net","description":"Quality for SQL","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sqlity.net\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/sqlity.net\/en\/#\/schema\/person\/bcffd8c572bc2f1bd10fdba80135e53c","name":"Sebastian Meine","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/4ab0a6d02dd494849a584a2c3c8bc3bdcef1d0aa5f87e98bf905dbdb9ad2ce3a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/4ab0a6d02dd494849a584a2c3c8bc3bdcef1d0aa5f87e98bf905dbdb9ad2ce3a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4ab0a6d02dd494849a584a2c3c8bc3bdcef1d0aa5f87e98bf905dbdb9ad2ce3a?s=96&d=mm&r=g","caption":"Sebastian Meine"},"sameAs":["http:\/\/sqlity.net","https:\/\/x.com\/sqlity"]}]}},"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/s2wXuw-pfs","jetpack-related-posts":[],"jetpack_featured_media_url":"https:\/\/sqlity.net\/wp-content\/uploads\/2014\/04\/Page_Free_Space_Example.jpg","_links":{"self":[{"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/posts\/2377","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/comments?post=2377"}],"version-history":[{"count":0,"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/posts\/2377\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/media\/2378"}],"wp:attachment":[{"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/media?parent=2377"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/categories?post=2377"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sqlity.net\/en\/wp-json\/wp\/v2\/tags?post=2377"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}