{"id":15652,"date":"2020-08-07T04:46:36","date_gmt":"2020-08-07T04:46:36","guid":{"rendered":"https:\/\/www.testpreptraining.com\/tutorial\/?page_id=15652"},"modified":"2022-04-04T10:16:47","modified_gmt":"2022-04-04T10:16:47","slug":"setting-up-staging-environments-in-azure-app-service","status":"publish","type":"page","link":"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/","title":{"rendered":"Setting up staging environments in Azure App Service"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><strong>AZ-303 is retired.\u00a0<a href=\"https:\/\/www.testpreptraining.ai\/designing-microsoft-azure-infrastructure-solutions-az-305\" target=\"_blank\" rel=\"noreferrer noopener\">AZ-305<\/a>\u00a0replacement is available.<\/strong><\/h2>\n\n\n\n<p>This tutorial will help you in Setting up staging environments in Azure App Service. When you deploy your web app, web app on Linux, mobile back end, or API app to&nbsp;Azure App Service, you can use a separate deployment slot instead of the default production slot when you&#8217;re running in the&nbsp;<strong>Standard<\/strong>,&nbsp;<strong>Premium<\/strong>, or&nbsp;<strong>Isolated<\/strong>&nbsp;App Service plan tier.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"add-a-slot\"><strong>Add a slot<\/strong><\/h3>\n\n\n\n<p>The app must be running in the&nbsp;<strong>Standard<\/strong>,&nbsp;<strong>Premium<\/strong>, or&nbsp;<strong>Isolated<\/strong>&nbsp;tier in order for you to enable multiple deployment slots.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Visit&nbsp;Azure portal, search for and choose <strong>App Services<\/strong>&nbsp;and choose your app.<\/li><\/ol>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/search-for-app-services.png\" alt=\"Search for App Services\"\/><figcaption>Image source &#8211; Microsoft<\/figcaption><\/figure><\/div>\n\n\n\n<p>In the left pane, choose&nbsp;<strong>Deployment slots<\/strong>&nbsp;&gt;&nbsp;<strong>Add Slot<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/qgaddnewdeploymentslot.png\" alt=\"Add a new deployment slot\"\/><figcaption>Image source &#8211; Microsoft<\/figcaption><\/figure><\/div>\n\n\n\n<p>In the&nbsp;<strong>Add a slot<\/strong>&nbsp;dialog box, give the slot a name, and select whether to clone an app configuration from another deployment slot. Select&nbsp;<strong>Add<\/strong>&nbsp;to continue.You can clone a configuration from any existing slot. Settings that can be cloned include app settings, connection strings, language framework versions, web sockets, HTTP version, and platform bitness.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/configurationsource1.png\" alt=\"Configuration source\"\/><figcaption>Image source &#8211; Microsoft<\/figcaption><\/figure><\/div>\n\n\n\n<p>After the slot is added, select&nbsp;<strong>Close<\/strong>&nbsp;to close the dialog box. The new slot is now shown on the&nbsp;<strong>Deployment slots<\/strong>&nbsp;page. By default,&nbsp;<strong>Traffic %<\/strong>&nbsp;is set to 0 for the new slot, with all customer traffic routed to the production slot.<\/p>\n\n\n\n<p>Select the new deployment slot to open that slot&#8217;s resource page.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/stagingtitle.png\" alt=\"Deployment slot title\"\/><figcaption>Image source &#8211; Microsoft<\/figcaption><\/figure><\/div>\n\n\n\n<p>The staging slot has a management page just like any other App Service app. You can change the slot&#8217;s configuration. To remind you that you&#8217;re viewing the deployment slot, the app name is shown as&nbsp;<strong>&lt;app-name&gt;\/&lt;slot-name&gt;<\/strong>, and the app type is&nbsp;<strong>App Service (Slot)<\/strong>. You can also see the slot as a separate app in your resource group, with the same designations.<\/p>\n\n\n\n<p>Select the app URL on the slot&#8217;s resource page. The deployment slot has its own host name and is also a live app. To limit public access to the deployment slot, see&nbsp;Azure App Service IP restrictions.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-happens-during-a-swap\"><strong>What happens during a swap<\/strong><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"swap-operation-steps\"><strong>Swap operation steps<\/strong><\/h4>\n\n\n\n<p>When you swap two slots (usually from a staging slot into the production slot), App Service does the following to ensure that the target slot doesn&#8217;t experience downtime:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Apply the following settings from the target slot (for example, the production slot) to all instances of the source slot:<ul><li>Slot-specific&nbsp;app settings and connection strings, if applicable.<\/li><li>Continuous deployment&nbsp;settings, if enabled.<\/li><li>App Service authentication&nbsp;settings, if enabled.Any of these cases trigger all instances in the source slot to restart. During&nbsp;swap with preview, this marks the end of the first phase. The swap operation is paused, and you can validate that the source slot works correctly with the target slot&#8217;s settings.<\/li><\/ul><\/li><li>Wait for every instance in the source slot to complete its restart. If any instance fails to restart, the swap operation reverts all changes to the source slot and stops the operation.<\/li><li>If&nbsp;local cache&nbsp;is enabled, trigger local cache initialization by making an HTTP request to the application root (&#8220;\/&#8221;) on each instance of the source slot. Wait until each instance returns any HTTP response. Local cache initialization causes another restart on each instance.<\/li><\/ol>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Further steps<\/strong><\/h4>\n\n\n\n<ol class=\"wp-block-list\"><li>If&nbsp;auto swap&nbsp;is enabled with&nbsp;custom warm-up, trigger&nbsp;Application Initiation&nbsp;by making an HTTP request to the application root (&#8220;\/&#8221;) on each instance of the source slot.If&nbsp;<code>applicationInitialization<\/code>&nbsp;isn&#8217;t specified, trigger an HTTP request to the application root of the source slot on each instance.If an instance returns any HTTP response, it&#8217;s considered to be warmed up.<\/li><li>If all instances on the source slot are warmed up successfully, swap the two slots by switching the routing rules for the two slots. After this step, the target slot (for example, the production slot) has the app that&#8217;s previously warmed up in the source slot.<\/li><li>Now that the source slot has the pre-swap app previously in the target slot, perform the same operation by applying all settings and restarting the instances.<\/li><\/ol>\n\n\n\n<p>At any point of the swap operation, all work of initializing the swapped apps happens on the source slot. The target slot remains online while the source slot is being prepared and warmed up, regardless of where the swap succeeds or fails. To swap a staging slot with the production slot, make sure that the production slot is always the target slot. This way, the swap operation doesn&#8217;t affect your production app.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Swapping Settings<\/strong><\/h3>\n\n\n\n<p><strong>Settings that are swapped<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>General settings, such as framework version, 32\/64-bit, web sockets<\/li><li>App settings (can be configured to stick to a slot)<\/li><li>Connection strings (can be configured to stick to a slot)<\/li><li>Handler mappings<\/li><li>Public certificates<\/li><li>WebJobs content<\/li><li>Hybrid connections *<\/li><li>Virtual network integration *<\/li><li>Service endpoints *<\/li><li>Azure Content Delivery Network *<\/li><\/ul>\n\n\n\n<p><strong>Settings that aren&#8217;t swapped<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Publishing endpoints<\/li><li>Custom domain names<\/li><li>Non-public certificates and TLS\/SSL settings<\/li><li>Scale settings<\/li><li>WebJobs schedulers<\/li><li>IP restrictions<\/li><li>Always On<\/li><li>Diagnostic settings<\/li><li>Cross-origin resource sharing (CORS)<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"swap-two-slots\"><strong>Swap two slots<\/strong><\/h3>\n\n\n\n<p>You can swap deployment slots on your app&#8217;s&nbsp;<strong>Deployment slots<\/strong>&nbsp;page and the&nbsp;<strong>Overview<\/strong>&nbsp;page. For technical details on the slot swap, see&nbsp;What happens during swap.<\/p>\n\n\n\n<p>To swap deployment slots:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Go to your app&#8217;s&nbsp;<strong>Deployment slots<\/strong>&nbsp;page and select&nbsp;<strong>Swap<\/strong>.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/swapbuttonbar.png\" alt=\"Swap button\"\/><figcaption>Image source &#8211; Microsoft<\/figcaption><\/figure><\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>The&nbsp;<strong>Swap<\/strong>&nbsp;dialog box shows settings in the selected source and target slots that will be changed.<\/li><li>Select the desired&nbsp;<strong>Source<\/strong>&nbsp;and&nbsp;<strong>Target<\/strong>&nbsp;slots. Usually, the target is the production slot. Also, select the&nbsp;<strong>Source Changes<\/strong>&nbsp;and&nbsp;<strong>Target Changes<\/strong>&nbsp;tabs and verify that the configuration changes are expected. When you&#8217;re finished, you can swap the slots immediately by selecting&nbsp;<strong>Swap<\/strong>.<\/li><\/ul>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/swapimmediately.png\" alt=\"Complete swap\"\/><figcaption>Image source &#8211; Microsoft<\/figcaption><\/figure><\/div>\n\n\n\n<ul class=\"wp-block-list\"><li>To see how your target slot would run with the new settings before the swap actually happens, don&#8217;t select&nbsp;<strong>Swap<\/strong>, but follow the instructions in&nbsp;Swap with preview.<\/li><li>When you&#8217;re finished, close the dialog box by selecting&nbsp;<strong>Close<\/strong>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"monitor-a-swap\"><strong>Monitor a swap<\/strong><\/h3>\n\n\n\n<p>If the&nbsp;swap operation&nbsp;takes a long time to complete, you can get information on the swap operation in the&nbsp;activity log.<\/p>\n\n\n\n<p>On your app&#8217;s resource page in the portal, in the left pane, select&nbsp;<strong>Activity log<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"route-production-traffic-automatically\"><strong>Route production traffic automatically<\/strong><\/h3>\n\n\n\n<p>To route production traffic automatically:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Go to your app&#8217;s resource page and select&nbsp;<strong>Deployment slots<\/strong>.<\/li><li>In the&nbsp;<strong>Traffic %<\/strong>&nbsp;column of the slot you want to route to, specify a percentage (between 0 and 100) to represent the amount of total traffic you want to route. Select&nbsp;<strong>Save<\/strong>.<\/li><\/ol>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/routetraffic.png\" alt=\"Setting a traffic percentage\"\/><figcaption>Image source &#8211; Microsoft<\/figcaption><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"delete-a-slot\"><strong>Delete a slot<\/strong><\/h3>\n\n\n\n<p>Search for and select your app. Select&nbsp;<strong>Deployment slots<\/strong>&nbsp;&gt;&nbsp;<em>&lt;slot to delete&gt;<\/em>&nbsp;&gt;&nbsp;<strong>Overview<\/strong>. The app type is shown as&nbsp;<strong>App Service (Slot)<\/strong>&nbsp;to remind you that you&#8217;re viewing a deployment slot. Select&nbsp;<strong>Delete<\/strong>&nbsp;on the command bar.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/deletestagingsitebutton.png\" alt=\"Delete a deployment slot\"\/><figcaption>Image source &#8211; Microsoft<\/figcaption><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><a href=\"https:\/\/www.testpreptraining.ai\/microsoft-azure-architect-technologies-az-303-free-practice-test\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"150\" src=\"https:\/\/www.testpreptraining.ai\/tutorial\/wp-content\/uploads\/2020\/07\/Untitled-design-5.png\" alt=\"free practice test for AZ- 303\" class=\"wp-image-13928\" srcset=\"https:\/\/www.testpreptraining.ai\/tutorial\/wp-content\/uploads\/2020\/07\/Untitled-design-5.png 960w, https:\/\/www.testpreptraining.ai\/tutorial\/wp-content\/uploads\/2020\/07\/Untitled-design-5-750x117.png 750w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/a><\/figure><\/div>\n\n\n\n<p><a href=\"https:\/\/www.testpreptraining.ai\/tutorial\/exam-az-303-microsoft-azure-architect-technologies\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Go back to home page <\/strong><\/a><\/p>\n\n\n\n<p class=\"has-text-align-right\"><strong>Reference documentation &#8211; <\/strong><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/deploy-staging-slots\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Set up staging environments in Azure App Service<\/strong><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>AZ-303 is retired.\u00a0AZ-305\u00a0replacement is available. This tutorial will help you in Setting up staging environments in Azure App Service. When you deploy your web app, web app on Linux, mobile back end, or API app to&nbsp;Azure App Service, you can use a separate deployment slot instead of the default production slot when you&#8217;re running in&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"categories":[],"tags":[],"class_list":["post-15652","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Setting up staging environments in Azure App Service<\/title>\n<meta name=\"description\" content=\"Enhance and upgrade your Azure Architect skills by preparing from tutorial - Setting up staging environments in Azure App Service.\" \/>\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.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Setting up staging environments in Azure App Service\" \/>\n<meta property=\"og:description\" content=\"Enhance and upgrade your Azure Architect skills by preparing from tutorial - Setting up staging environments in Azure App Service.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/\" \/>\n<meta property=\"og:site_name\" content=\"Testprep Training Tutorials\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-04T10:16:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/search-for-app-services.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/\",\"url\":\"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/\",\"name\":\"Setting up staging environments in Azure App Service\",\"isPartOf\":{\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/#website\"},\"datePublished\":\"2020-08-07T04:46:36+00:00\",\"dateModified\":\"2022-04-04T10:16:47+00:00\",\"description\":\"Enhance and upgrade your Azure Architect skills by preparing from tutorial - Setting up staging environments in Azure App Service.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.testpreptraining.ai\/tutorial\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Setting up staging environments in Azure App Service\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/#website\",\"url\":\"https:\/\/www.testpreptraining.ai\/tutorial\/\",\"name\":\"Testprep Training Tutorials\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.testpreptraining.ai\/tutorial\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/#organization\",\"name\":\"Testprep Training\",\"url\":\"https:\/\/www.testpreptraining.ai\/tutorial\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.testpreptraining.com\/tutorial\/wp-content\/uploads\/2020\/07\/tpt-logo-6.png\",\"contentUrl\":\"https:\/\/www.testpreptraining.com\/tutorial\/wp-content\/uploads\/2020\/07\/tpt-logo-6.png\",\"width\":583,\"height\":153,\"caption\":\"Testprep Training\"},\"image\":{\"@id\":\"https:\/\/www.testpreptraining.ai\/tutorial\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Setting up staging environments in Azure App Service","description":"Enhance and upgrade your Azure Architect skills by preparing from tutorial - Setting up staging environments in Azure App Service.","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.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/","og_locale":"en_US","og_type":"article","og_title":"Setting up staging environments in Azure App Service","og_description":"Enhance and upgrade your Azure Architect skills by preparing from tutorial - Setting up staging environments in Azure App Service.","og_url":"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/","og_site_name":"Testprep Training Tutorials","article_modified_time":"2022-04-04T10:16:47+00:00","og_image":[{"url":"https:\/\/docs.microsoft.com\/en-us\/azure\/app-service\/media\/web-sites-staged-publishing\/search-for-app-services.png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/","url":"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/","name":"Setting up staging environments in Azure App Service","isPartOf":{"@id":"https:\/\/www.testpreptraining.ai\/tutorial\/#website"},"datePublished":"2020-08-07T04:46:36+00:00","dateModified":"2022-04-04T10:16:47+00:00","description":"Enhance and upgrade your Azure Architect skills by preparing from tutorial - Setting up staging environments in Azure App Service.","breadcrumb":{"@id":"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.testpreptraining.ai\/tutorial\/setting-up-staging-environments-in-azure-app-service\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.testpreptraining.ai\/tutorial\/"},{"@type":"ListItem","position":2,"name":"Setting up staging environments in Azure App Service"}]},{"@type":"WebSite","@id":"https:\/\/www.testpreptraining.ai\/tutorial\/#website","url":"https:\/\/www.testpreptraining.ai\/tutorial\/","name":"Testprep Training Tutorials","description":"","publisher":{"@id":"https:\/\/www.testpreptraining.ai\/tutorial\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.testpreptraining.ai\/tutorial\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.testpreptraining.ai\/tutorial\/#organization","name":"Testprep Training","url":"https:\/\/www.testpreptraining.ai\/tutorial\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.testpreptraining.ai\/tutorial\/#\/schema\/logo\/image\/","url":"https:\/\/www.testpreptraining.com\/tutorial\/wp-content\/uploads\/2020\/07\/tpt-logo-6.png","contentUrl":"https:\/\/www.testpreptraining.com\/tutorial\/wp-content\/uploads\/2020\/07\/tpt-logo-6.png","width":583,"height":153,"caption":"Testprep Training"},"image":{"@id":"https:\/\/www.testpreptraining.ai\/tutorial\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/pages\/15652","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/comments?post=15652"}],"version-history":[{"count":2,"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/pages\/15652\/revisions"}],"predecessor-version":[{"id":54068,"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/pages\/15652\/revisions\/54068"}],"wp:attachment":[{"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/media?parent=15652"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/categories?post=15652"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.testpreptraining.ai\/tutorial\/wp-json\/wp\/v2\/tags?post=15652"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}