{"id":3009,"date":"2024-03-15T06:56:13","date_gmt":"2024-03-15T06:56:13","guid":{"rendered":"https:\/\/www.theappfounders.com\/blog\/?p=3009"},"modified":"2024-03-15T06:56:13","modified_gmt":"2024-03-15T06:56:13","slug":"difference-between-promise-and-async-await-in-node","status":"publish","type":"post","link":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/","title":{"rendered":"Difference Between Promise and Async\/Await in Node"},"content":{"rendered":"<p>In making computer programs, especially with Node.js, we often need to do things that take some time, like asking a friend to get something from the store.\u00a0 While waiting, we don&#8217;t want to sit around doing nothing; we want to keep busy with other things.\u00a0 When we talk about these wait times, we talk about &#8220;asynchronous programming.&#8221; It&#8217;s a way for the computer to keep working while waiting for something else to finish.<\/p>\n<p>In Node.js, there are two main ways to handle these wait times: Promise and async\/await.<\/p>\n<p>There are different methods of keeping track.\u00a0 Let&#8217;s find out how they work and why they&#8217;re important for making great computer programs.<\/p>\n<h2>Promises in Node.js<\/h2>\n<p>In Node.js, a Promise is like making a promise to a friend.\u00a0 You say you will do something, and your friend waits for you to finish.\u00a0 In computer terms, a Promise is a way to deal with things that take time, like getting information from the Internet.<\/p>\n<p>When you use a Promise, you tell the computer, &#8220;I promise to give you an answer later.&#8221; The computer can then do other things while it waits for the answer.\u00a0 Once the answer is ready, the computer will know what to do next, whether the answer was good (the task was completed) or not so good (there was a problem).<\/p>\n<p>Promises make writing programs that wait for things easier because they help track what should happen after the wait.\u00a0 They are like a list of instructions for &#8220;what to do next&#8221; that the computer follows, ensuring nothing gets mixed up.<\/p>\n<h2>Async\/await in Node.js.<\/h2>\n<p>Now, let&#8217;s talk about another way to handle waiting in Node.js: async\/await.\u00a0 Think of &#8220;async&#8221; as saying, &#8220;This task might take some time,&#8221; and &#8220;await&#8221; as saying, &#8220;Wait here for the task to finish before moving on.&#8221; Together, they work like magic words that help your computer program wait for things without getting confused.<\/p>\n<p>Using async\/await makes your code look cleaner and easier to understand.\u00a0 It&#8217;s like reading a story that goes in order, from start to finish, without jumping around.\u00a0 This way, when someone else reads your code, or even you come back to it later, it&#8217;s much easier to see what&#8217;s happening and when things are supposed to happen.<\/p>\n<p>Async\/await is especially handy because it lets you write waiting tasks in a way that feels more natural, almost like they&#8217;re not waiting at all.\u00a0 It&#8217;s a big help for making programs that need to wait for stuff, like when your program needs to ask another computer for information.<\/p>\n<h2>Key Differences Between Promise and async\/await<\/h2>\n<p>When we look at Promise and async\/await in Node, we see they both help with waiting tasks but do it differently.\u00a0 Here&#8217;s how they are different:<\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><strong>Promises<\/strong> are like saying, &#8220;I will tell you later,&#8221; and the computer keeps doing other things while waiting.\u00a0 You use .then() to say what should happen after the promise is kept and .catch() to say what should do if the promise can&#8217;t be kept.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><strong>Async\/await<\/strong> makes your code look like it&#8217;s not waiting at all, even though it is.\u00a0 You write async before a function to say, &#8220;This function has some waiting inside.&#8221; Then, you use await to say, &#8220;Wait here until this specific waiting task is done.&#8221;<\/li>\n<\/ol>\n<p>The big difference is how they make the code look and feel.\u00a0 Promises are great, but they can make your code look a bit complicated because of .then() and .catch().\u00a0 Async\/await makes your code cleaner and easier to read, like a story from beginning to end.<\/p>\n<p>Choosing between them depends on what you&#8217;re doing.\u00a0 If you like keeping track of promises with .then() and .catch(), you might prefer promises.\u00a0 If you like your code to look simple and straight, you might prefer async\/await.\u00a0 Both are good choices in Node.js; it just depends on how you like to write your code.<\/p>\n<h2>Practical Applications and Use Cases<\/h2>\n<p>In making apps and websites, knowing when to use Promise and async\/await is like picking the right tool for a job.\u00a0 Sometimes, you might need a hammer; other times, a screwdriver is better.\u00a0 Promise and async\/await help your program wait for something, like information from the internet, but they work best in different situations.<\/p>\n<p>For example, if you&#8217;re building an app that asks for lots of information from different places, async\/await can make your code easier to read and understand.\u00a0 It&#8217;s like following a straight path to get somewhere.\u00a0 But, if you&#8217;re working on a smaller task that just needs to wait for one thing, a Promise might be all you need.\u00a0 It&#8217;s like sending a quick note saying, &#8220;Let me know when you&#8217;re done.&#8221;<\/p>\n<p>Knowing which one to use helps make your app or website work better.\u00a0 It can also help <a href=\"https:\/\/www.theappfounders.com\/\">The App Founders<\/a> see how smoothly and quickly you can make things happen, ensuring their support is well used.\u00a0 It&#8217;s all about choosing the right tool at the right time to make the best apps and websites.<\/p>\n<h2>Impact on App Development Costs<\/h2>\n<p>When making an app, thinking about Promise and async\/await can also change how much time and money you need to spend.\u00a0 Just like faster shipping might cost more, picking the right way to handle waiting in your code can save time and money.<\/p>\n<p>However, sometimes you might need to use Promises for specific tasks because they fit better.\u00a0 It&#8217;s like choosing the right package for shipping; you wouldn&#8217;t use a big box for something small.\u00a0 Making smart choices between Promise and async\/await helps keep <a href=\"https:\/\/www.theappfounders.com\/blog\/mobile-app-development-cost-estimation\/\">app development costs<\/a> right, not too high or too low.<\/p>\n<h2>Improving Mobile App Navigation with async\/await<\/h2>\n<p>When making apps, especially ones people use on their phones, making sure <a href=\"https:\/\/www.theappfounders.com\/blog\/things-to-know-about-mobile-app-navigation\/\">mobile app navigation<\/a> is smooth is very important.\u00a0 No one likes to wait too long for things to load or move around in an app.\u00a0 This is where async\/await can help.\u00a0 It&#8217;s like making sure the path is clear for you to walk through without stopping.<\/p>\n<p>Using async\/await helps your app talk to the internet or other parts of the phone quickly and without getting stuck.\u00a0 This means it happens fast when someone uses your app to find something or go somewhere.\u00a0 They tap on something, and right away, they see what they want.\u00a0 This good experience makes people happy to use your app.<\/p>\n<h3>Conclusion<\/h3>\n<p>So, we learned a lot about Promise and async\/await in Node.\u00a0 Choosing the right one can make your app faster and easier to use, which everyone likes.\u00a0 It also helps keep the cost of making the app right, not too expensive or cheap.<\/p>\n<p>Understanding Promise and async\/await is crucial for anyone making apps or websites.\u00a0 It helps ensure your app works well and gives people a good experience, which is what making apps is all about.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In making computer programs, especially with Node.js, we often need to do things that take some time, like asking a friend to get something from the store.\u00a0 While waiting, we don&#8217;t want to sit around doing nothing; we want to keep busy with other things.\u00a0 When we talk about these wait times, we talk about [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":3029,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[611],"tags":[618,619],"class_list":["post-3009","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-node","tag-async-await-in-node","tag-promise-in-node"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Difference Between Promise and Async\/Await in Node<\/title>\n<meta name=\"description\" content=\"Key differences between Promise and async\/await in Node.js. Understand how each affects your coding practices and the efficiency of your Node.js applications.\" \/>\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.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Difference Between Promise and Async\/Await in Node\" \/>\n<meta property=\"og:description\" content=\"Key differences between Promise and async\/await in Node.js. Understand how each affects your coding practices and the efficiency of your Node.js applications.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/\" \/>\n<meta property=\"og:site_name\" content=\"The App Founders\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T06:56:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1080\" \/>\n\t<meta property=\"og:image:height\" content=\"1920\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Michael Thomas\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Michael Thomas\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/\"},\"author\":{\"name\":\"Michael Thomas\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#\/schema\/person\/857d5e639596138b3f834772a39bc6d6\"},\"headline\":\"Difference Between Promise and Async\/Await in Node\",\"datePublished\":\"2024-03-15T06:56:13+00:00\",\"dateModified\":\"2024-03-15T06:56:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/\"},\"wordCount\":1160,\"publisher\":{\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png\",\"keywords\":[\"Async\/Await in Node\",\"Promise in Node\"],\"articleSection\":[\"Node\"],\"inLanguage\":\"en-US\"},{\"@type\":\"Blog\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/\",\"url\":\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/\",\"name\":\"Difference Between Promise and Async\/Await in Node\",\"isPartOf\":{\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#website\"},\"primaryImageOfPage\":\"\",\"image\":{\"@id\":\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png\",\"datePublished\":\"2024-03-15T06:56:13+00:00\",\"dateModified\":\"2024-03-15T06:56:13+00:00\",\"description\":\"Key differences between Promise and async\/await in Node.js. Understand how each affects your coding practices and the efficiency of your Node.js applications.\",\"breadcrumb\":\"\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/#primaryimage\",\"url\":\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png\",\"contentUrl\":\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png\",\"width\":1080,\"height\":1920,\"caption\":\"Difference Between Promise and Async\/Await in Node\"},{\"@type\":\"Article\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#website\",\"url\":\"https:\/\/www.theappfounders.com\/blog\/\",\"name\":\"The App Founders\",\"description\":\"- Blog\",\"publisher\":{\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.theappfounders.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#organization\",\"name\":\"The App Founders\",\"url\":\"https:\/\/www.theappfounders.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2023\/12\/whatsapp.png\",\"contentUrl\":\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2023\/12\/whatsapp.png\",\"width\":719,\"height\":607,\"caption\":\"The App Founders\"},\"image\":{\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#\/schema\/person\/857d5e639596138b3f834772a39bc6d6\",\"name\":\"Michael Thomas\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.theappfounders.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2023\/12\/author.png\",\"contentUrl\":\"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2023\/12\/author.png\",\"caption\":\"Michael Thomas\"},\"url\":\"https:\/\/www.theappfounders.com\/blog\/author\/michael-thomas\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Difference Between Promise and Async\/Await in Node","description":"Key differences between Promise and async\/await in Node.js. Understand how each affects your coding practices and the efficiency of your Node.js applications.","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.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/","og_locale":"en_US","og_type":"article","og_title":"Difference Between Promise and Async\/Await in Node","og_description":"Key differences between Promise and async\/await in Node.js. Understand how each affects your coding practices and the efficiency of your Node.js applications.","og_url":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/","og_site_name":"The App Founders","article_published_time":"2024-03-15T06:56:13+00:00","og_image":[{"width":1080,"height":1920,"url":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png","type":"image\/png"}],"author":"Michael Thomas","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Michael Thomas","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/#article","isPartOf":{"@id":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/"},"author":{"name":"Michael Thomas","@id":"https:\/\/www.theappfounders.com\/blog\/#\/schema\/person\/857d5e639596138b3f834772a39bc6d6"},"headline":"Difference Between Promise and Async\/Await in Node","datePublished":"2024-03-15T06:56:13+00:00","dateModified":"2024-03-15T06:56:13+00:00","mainEntityOfPage":{"@id":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/"},"wordCount":1160,"publisher":{"@id":"https:\/\/www.theappfounders.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/#primaryimage"},"thumbnailUrl":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png","keywords":["Async\/Await in Node","Promise in Node"],"articleSection":["Node"],"inLanguage":"en-US"},{"@type":"Blog","@id":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/","url":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/","name":"Difference Between Promise and Async\/Await in Node","isPartOf":{"@id":"https:\/\/www.theappfounders.com\/blog\/#website"},"primaryImageOfPage":"","image":{"@id":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/#primaryimage"},"thumbnailUrl":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png","datePublished":"2024-03-15T06:56:13+00:00","dateModified":"2024-03-15T06:56:13+00:00","description":"Key differences between Promise and async\/await in Node.js. Understand how each affects your coding practices and the efficiency of your Node.js applications.","breadcrumb":"","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.theappfounders.com\/blog\/difference-between-promise-and-async-await-in-node\/#primaryimage","url":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png","contentUrl":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2024\/03\/Difference-Between-Promise-and-AsyncAwait-in-Node.png","width":1080,"height":1920,"caption":"Difference Between Promise and Async\/Await in Node"},{"@type":"Article","@id":"https:\/\/www.theappfounders.com\/blog\/#website","url":"https:\/\/www.theappfounders.com\/blog\/","name":"The App Founders","description":"- Blog","publisher":{"@id":"https:\/\/www.theappfounders.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.theappfounders.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.theappfounders.com\/blog\/#organization","name":"The App Founders","url":"https:\/\/www.theappfounders.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.theappfounders.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2023\/12\/whatsapp.png","contentUrl":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2023\/12\/whatsapp.png","width":719,"height":607,"caption":"The App Founders"},"image":{"@id":"https:\/\/www.theappfounders.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.theappfounders.com\/blog\/#\/schema\/person\/857d5e639596138b3f834772a39bc6d6","name":"Michael Thomas","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.theappfounders.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2023\/12\/author.png","contentUrl":"https:\/\/www.theappfounders.com\/blog\/wp-content\/uploads\/2023\/12\/author.png","caption":"Michael Thomas"},"url":"https:\/\/www.theappfounders.com\/blog\/author\/michael-thomas\/"}]}},"_links":{"self":[{"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/posts\/3009"}],"collection":[{"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/comments?post=3009"}],"version-history":[{"count":1,"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/posts\/3009\/revisions"}],"predecessor-version":[{"id":3030,"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/posts\/3009\/revisions\/3030"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/media\/3029"}],"wp:attachment":[{"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/media?parent=3009"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/categories?post=3009"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.theappfounders.com\/blog\/wp-json\/wp\/v2\/tags?post=3009"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}