{"id":2859,"date":"2022-04-26T14:47:41","date_gmt":"2022-04-26T19:47:41","guid":{"rendered":"https:\/\/www.teamdesk.net\/blog\/?p=2859"},"modified":"2022-05-10T15:44:03","modified_gmt":"2022-05-10T20:44:03","slug":"performance-profiler","status":"publish","type":"post","link":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/","title":{"rendered":"Performance Profiler in TeamDesk"},"content":{"rendered":"\n<p><strong>Updated May, 10th, 2022<\/strong>, added a paragraph on <a href=\"#noui\">profiling non-UI operations<\/a>.<\/p>\n\n\n\n<p>Sometimes you may wonder, what&#8217;s going on in your database? Why the dashboard is loading slow? Why it takes ages to save the record? Here is our new performance profiler to help!<\/p>\n\n\n\n<p>To start performance profiler, open dropdown menu with your name in top bar. Here, you&#8217;ll see <em>Profiler: Off<\/em> menu item. Click it to start the profiling. The page will reload and yellow bar will indicate the profiling is on.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><a href=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-3.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-3.png\" alt=\"Performance profiler in action\" class=\"wp-image-2860\" width=\"526\" height=\"380\" srcset=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-3.png 1051w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-3-300x217.png 300w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-3-1024x740.png 1024w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-3-768x555.png 768w\" sizes=\"auto, (max-width: 526px) 100vw, 526px\" \/><\/a><\/figure>\n\n\n\n<p>Now perform actions you want to profile. Switch tabs, edit records, save, whatever. When done, use either user menu or a link in a yellow bar to stop profiling and examine the results.<\/p>\n\n\n\n<p>Let&#8217;s start with something simple. Navigate to some view, turn on the profiler and once page refreshes turn it off. You&#8217;ll see the results:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1661\" height=\"612\" src=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-4.png\" alt=\"\" class=\"wp-image-2862\" srcset=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-4.png 1661w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-4-300x111.png 300w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-4-1024x377.png 1024w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-4-768x283.png 768w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-4-1536x566.png 1536w\" sizes=\"auto, (max-width: 1661px) 100vw, 1661px\" \/><\/a><\/figure>\n\n\n\n<p>And you can save the results to share with TeamDesk support team or other admins of your database.<\/p>\n\n\n\n<p>How to interpret this? We spent 27ms to render the page. This time is counted from first byte we got till the last byte we sent. <\/p>\n\n\n\n<p>There are two sub-entries: <em>Calculate New Record Menu<\/em> and <em>Render &#8216;List All&#8217;<\/em>.  We do not track every sub-operation but data access as we crunch numbers really fast, but data access is the typical bottleneck. So, from 27ms for the whole page we spend 2ms to calculating actual state of New Record menu displayed under tabs and 7ms to render <em>List All<\/em> view. <\/p>\n\n\n\n<p>Going deeper, to render the view we needed two requests for data: one to get the records to display, that&#8217;s <em>Get View Data<\/em> and another one, to get number of records and group\/grand totals and averages, if any. That&#8217;s <em>Get View Totals\/Averages<\/em>. We spent 3ms on each request.<\/p>\n\n\n\n<p>Simple enough? Let&#8217;s try preview form with details:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><a href=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-5.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-5.png\" alt=\"Profile preview form with details\" class=\"wp-image-2863\" width=\"879\" height=\"219\" srcset=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-5.png 1758w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-5-300x75.png 300w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-5-1024x255.png 1024w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-5-768x191.png 768w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-5-1536x383.png 1536w\" sizes=\"auto, (max-width: 879px) 100vw, 879px\" \/><\/a><\/figure>\n\n\n\n<p>Here it takes two web requests to display the page. First is to render master record with one data access request. Second is to display detail view for the master record, it&#8217;s the same as displaying just the view, we discussed above.<\/p>\n\n\n\n<p>Edit form? Easy!<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1767\" height=\"253\" src=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-6.png\" alt=\"Profiling edit form\" class=\"wp-image-2864\" srcset=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-6.png 1767w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-6-300x43.png 300w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-6-1024x147.png 1024w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-6-768x110.png 768w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-6-1536x220.png 1536w\" sizes=\"auto, (max-width: 1767px) 100vw, 1767px\" \/><\/a><\/figure>\n\n\n\n<p>Here we see we needed one data request to get the record to edit and another one to populate the dropdown.<\/p>\n\n\n\n<p>But where profiler really shines is to track what&#8217;s happening on save and custom buttons.<\/p>\n\n\n\n<p>As a sample database we took <a href=\"https:\/\/www.teamdesk.net\/copy_master_detail_subdetail\" target=\"_blank\" rel=\"noreferrer noopener\">Copy Record with Details and Sub-Details<\/a> which has fairly complex copy logic. And now you have a chance to look on how internals works.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><a href=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-7.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-7.png\" alt=\"\" class=\"wp-image-2865\" width=\"867\" height=\"615\" srcset=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-7.png 1734w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-7-300x213.png 300w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-7-1024x726.png 1024w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-7-768x545.png 768w, https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/image-7-1536x1090.png 1536w\" sizes=\"auto, (max-width: 867px) 100vw, 867px\" \/><\/a><\/figure>\n\n\n\n<p>The button executes three actions &#8211; one to copy master record, one to copy the details and one to copy sub-details. Latter two actions use RecordSet columns to get the list of records to copy and repeat the action on each source record. It is all visible in profiler. There are two detail records to copy (we expanded one to see sub-operations, another one is collapsed). And there are four sub-detail records to copy. <\/p>\n\n\n\n<p>Triggers and associated actions, web requests made by Call URL actions will all be visible in profiler results.<\/p>\n\n\n\n<p id=\"noui\">For non-UI parts such as periodic and time-dependent triggers, view subscriptions, webhooks, and REST API calls we collect profiler data automatically. Link to the profiler data is added to corresponding log entries.<\/p>\n\n\n\n<p>The profiler simply collects the performance samples from the code we execute and does not alter your data or the way we process it in any way. <\/p>\n\n\n\n<p>Happy profiling!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sometimes you may wonder, what&#8217;s going on in your database? Why the dashboard is loading slow? Why it takes ages to save the record? Here is our new performance profiler to help!<\/p>\n","protected":false},"author":4,"featured_media":2867,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[40],"class_list":["post-2859","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-whats-new","tag-performance"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Performance Profiler in TeamDesk - TeamDesk Blog<\/title>\n<meta name=\"description\" content=\"Why the dashboard is loading slow? Why it takes ages to save the record? Here is our new performance profiler to help!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Performance Profiler in TeamDesk - TeamDesk Blog\" \/>\n<meta property=\"og:description\" content=\"Why the dashboard is loading slow? Why it takes ages to save the record? Here is our new performance profiler to help!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/\" \/>\n<meta property=\"og:site_name\" content=\"TeamDesk Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-04-26T19:47:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-05-10T20:44:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/profiler.png\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Kirill Bondar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirill Bondar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/\"},\"author\":{\"name\":\"Kirill Bondar\",\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/#\\\/schema\\\/person\\\/22c4c05bd657513c8b00122fa364c8d2\"},\"headline\":\"Performance Profiler in TeamDesk\",\"datePublished\":\"2022-04-26T19:47:41+00:00\",\"dateModified\":\"2022-05-10T20:44:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/\"},\"wordCount\":570,\"commentCount\":5,\"image\":{\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/profiler.png\",\"keywords\":[\"performance\"],\"articleSection\":[\"What's New\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/\",\"url\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/\",\"name\":\"Performance Profiler in TeamDesk - TeamDesk Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/profiler.png\",\"datePublished\":\"2022-04-26T19:47:41+00:00\",\"dateModified\":\"2022-05-10T20:44:03+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/#\\\/schema\\\/person\\\/22c4c05bd657513c8b00122fa364c8d2\"},\"description\":\"Why the dashboard is loading slow? Why it takes ages to save the record? Here is our new performance profiler to help!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/profiler.png\",\"contentUrl\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/profiler.png\",\"width\":800,\"height\":800,\"caption\":\"Performance Profiler\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/whats-new\\\/performance-profiler\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Performance Profiler in TeamDesk\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/\",\"name\":\"TeamDesk Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/#\\\/schema\\\/person\\\/22c4c05bd657513c8b00122fa364c8d2\",\"name\":\"Kirill Bondar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc5bc844095b5753ccc73c589c028bf16615674f289668146bbd59205a08a52d?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc5bc844095b5753ccc73c589c028bf16615674f289668146bbd59205a08a52d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc5bc844095b5753ccc73c589c028bf16615674f289668146bbd59205a08a52d?s=96&d=mm&r=g\",\"caption\":\"Kirill Bondar\"},\"url\":\"https:\\\/\\\/www.teamdesk.net\\\/blog\\\/author\\\/kirill-bondar\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Performance Profiler in TeamDesk - TeamDesk Blog","description":"Why the dashboard is loading slow? Why it takes ages to save the record? Here is our new performance profiler to help!","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:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/","og_locale":"en_US","og_type":"article","og_title":"Performance Profiler in TeamDesk - TeamDesk Blog","og_description":"Why the dashboard is loading slow? Why it takes ages to save the record? Here is our new performance profiler to help!","og_url":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/","og_site_name":"TeamDesk Blog","article_published_time":"2022-04-26T19:47:41+00:00","article_modified_time":"2022-05-10T20:44:03+00:00","og_image":[{"width":800,"height":800,"url":"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/profiler.png","type":"image\/png"}],"author":"Kirill Bondar","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirill Bondar","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/#article","isPartOf":{"@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/"},"author":{"name":"Kirill Bondar","@id":"https:\/\/www.teamdesk.net\/blog\/#\/schema\/person\/22c4c05bd657513c8b00122fa364c8d2"},"headline":"Performance Profiler in TeamDesk","datePublished":"2022-04-26T19:47:41+00:00","dateModified":"2022-05-10T20:44:03+00:00","mainEntityOfPage":{"@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/"},"wordCount":570,"commentCount":5,"image":{"@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/#primaryimage"},"thumbnailUrl":"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/profiler.png","keywords":["performance"],"articleSection":["What's New"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/","url":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/","name":"Performance Profiler in TeamDesk - TeamDesk Blog","isPartOf":{"@id":"https:\/\/www.teamdesk.net\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/#primaryimage"},"image":{"@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/#primaryimage"},"thumbnailUrl":"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/profiler.png","datePublished":"2022-04-26T19:47:41+00:00","dateModified":"2022-05-10T20:44:03+00:00","author":{"@id":"https:\/\/www.teamdesk.net\/blog\/#\/schema\/person\/22c4c05bd657513c8b00122fa364c8d2"},"description":"Why the dashboard is loading slow? Why it takes ages to save the record? Here is our new performance profiler to help!","breadcrumb":{"@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/#primaryimage","url":"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/profiler.png","contentUrl":"https:\/\/www.teamdesk.net\/blog\/wp-content\/uploads\/2022\/04\/profiler.png","width":800,"height":800,"caption":"Performance Profiler"},{"@type":"BreadcrumbList","@id":"https:\/\/www.teamdesk.net\/blog\/whats-new\/performance-profiler\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.teamdesk.net\/blog\/"},{"@type":"ListItem","position":2,"name":"Performance Profiler in TeamDesk"}]},{"@type":"WebSite","@id":"https:\/\/www.teamdesk.net\/blog\/#website","url":"https:\/\/www.teamdesk.net\/blog\/","name":"TeamDesk Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.teamdesk.net\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.teamdesk.net\/blog\/#\/schema\/person\/22c4c05bd657513c8b00122fa364c8d2","name":"Kirill Bondar","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/dc5bc844095b5753ccc73c589c028bf16615674f289668146bbd59205a08a52d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/dc5bc844095b5753ccc73c589c028bf16615674f289668146bbd59205a08a52d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dc5bc844095b5753ccc73c589c028bf16615674f289668146bbd59205a08a52d?s=96&d=mm&r=g","caption":"Kirill Bondar"},"url":"https:\/\/www.teamdesk.net\/blog\/author\/kirill-bondar\/"}]}},"_links":{"self":[{"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/posts\/2859","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/comments?post=2859"}],"version-history":[{"count":10,"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/posts\/2859\/revisions"}],"predecessor-version":[{"id":2877,"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/posts\/2859\/revisions\/2877"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/media\/2867"}],"wp:attachment":[{"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/media?parent=2859"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/categories?post=2859"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.teamdesk.net\/blog\/wp-json\/wp\/v2\/tags?post=2859"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}