{"id":2738,"date":"2018-05-09T00:00:00","date_gmt":"2018-05-09T00:00:00","guid":{"rendered":"https:\/\/azure.microsoft.com\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb"},"modified":"2023-05-11T15:39:40","modified_gmt":"2023-05-11T22:39:40","slug":"announcing-new-async-java-sdk-for-azure-cosmosdb","status":"publish","type":"post","link":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/","title":{"rendered":"Announcing new Async Java SDK for Azure #CosmosDB"},"content":{"rendered":"<p>We\u2019re excited to announce a new <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/cosmos-db\/sql-api-sdk-async-java\" target=\"_blank\" rel=\"noopener\">asynchronous Java SDK for Cosmos DB\u2019s SQL API<\/a> open sourced on <a href=\"https:\/\/github.com\/Azure\/azure-cosmosdb-java\" target=\"_blank\" rel=\"noopener\">GitHub<\/a>. This SDK leverages the popular <a href=\"https:\/\/github.com\/ReactiveX\/RxJava\" target=\"_blank\" rel=\"noopener\">RxJava<\/a> library to add a new async API surface area for composing event-based programs with observable sequences. It also features an improved user experience and is also lighter weight than our previous synchronous Java SDK (yielding a 2x performance improvement on the client-side)!<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"image\" height=\"312\" src=\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp\" title=\"image\" width=\"624\"><\/p>\n<p>You can add the library from <a href=\"https:\/\/mvnrepository.com\/artifact\/com.microsoft.azure\/azure-cosmosdb\/1.0.1\" target=\"_blank\" rel=\"noopener\">Maven<\/a> using:<\/p>\n<pre class=\"prettyprint\">\r\n<dependency>\r\n    <groupId>com.microsoft.azure<\/groupId>\r\n    <artifactId>azure-cosmosdb<\/artifactId>\r\n    <version>1.0.1<\/version>\r\n<\/dependency>\r\n<\/pre>\n<h3>Connect to Cosmos DB<\/h3>\n<p>The new SDK uses convenient builder pattern to specify connectivity options:<\/p>\n<pre class=\"prettyprint\">\r\nasyncClient = new AsyncDocumentClient.Builder()\r\n                         .withServiceEndpoint(HOST)\r\n                         .withMasterKey(MASTER_KEY)\r\n                         .withConnectionPolicy(ConnectionPolicy.GetDefault())\r\n                         .withConsistencyLevel(ConsistencyLevel.Eventual)\r\n                         .build();\r\n<\/pre>\n<h3>Insert an item<\/h3>\n<p>To execute and coordinate Cosmos DB data operations asynchronously, and get the results you use observables:<\/p>\n<pre class=\"prettyprint\">\r\nDocument doc = \r\n      new Document(String.format(\"{ 'id': 'doc%d', 'counter': '%d'}\", 1, 1));\r\n\r\nObservable<ResourceResponse<Document>> createDocumentObservable =\r\n      asyncClient.createDocument(collectionLink, doc, null, false);\r\n\r\ncreateDocumentObservable\r\n      .single()           \/\/ we know there will be one response\r\n      .subscribe(documentResourceResponse -> {\r\n            System.out.println(documentResourceResponse.getRequestCharge());\r\n      });\r\n<\/pre>\n<p>Note that the createDocument request will be issued only once .subscribe is called on the corresponding observable result.<\/p>\n<h3>Query<\/h3>\n<p>In Cosmos DB queries can return multiple pages of data. To efficiently read all the pages, simply subscribe and read all pages:<\/p>\n<pre class=\"prettyprint\">\r\nObservable<FeedResponse<Document>> documentQueryObservable = asyncClient\r\n                .queryDocuments(getCollectionLink(), \"SELECT * FROM root\", options);\r\n\r\n\/\/ forEach(.) is an alias for subscribe(.)\r\ndocumentQueryObservable.forEach(page -> {\r\n     for (Document d : page.getResults()) {    \r\n            System.out.println(d.toJson());\r\n     }\r\n});\r\n<\/pre>\n<p>We just barely scratched the surface. <a href=\"https:\/\/github.com\/Azure\/azure-cosmosdb-java\" target=\"_blank\" rel=\"noopener\">Learn more about Azure Cosmos DB async SDK for Java<\/a>.<\/p>\n<p>If you are using Azure Cosmos DB, please feel free to reach out to us at <a href=\"mailto:AskCosmosDB@microsoft.com\">AskCosmosDB@microsoft.com<\/a> any time. If you are not yet using Azure Cosmos DB, you can try Azure Cosmos DB for free today, no sign up or credit card is required. If you need any help or have questions or feedback, please reach out to us any time. For the latest Azure Cosmos DB news and features, please stay up-to-date by following us on Twitter <a href=\"https:\/\/twitter.com\/search?q=%23cosmosdb\" target=\"_blank\" rel=\"noopener\">#CosmosDB<\/a>, <a href=\"https:\/\/twitter.com\/AzureCosmosDB\" target=\"_blank\" rel=\"noopener\">@AzureCosmosDB<\/a>. We look forward to see what you will build with Azure Cosmos DB!<\/p>\n<p>&#8211; Your friends at Azure Cosmos DB<\/p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We\u2019re excited to announce a new asynchronous Java SDK for Cosmos DB\u2019s SQL API.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"ms_queue_id":[],"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","_alt_title":"","footnotes":"","msx_community_cta_settings":[]},"categories":[1473,1485],"tags":[],"audience":[3057,3055,3053,3056],"content-type":[1465],"product":[1538],"tech-community":[],"topic":[],"coauthors":[762],"class_list":["post-2738","post","type-post","status-publish","format-standard","hentry","category-databases","category-internet-of-things","audience-data-professionals","audience-developers","audience-it-decision-makers","audience-it-implementors","content-type-announcements","product-azure-cosmos-db"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Announcing new Async Java SDK for Azure #CosmosDB | Microsoft Azure Blog<\/title>\n<meta name=\"description\" content=\"We\u2019re excited to announce a new asynchronous Java SDK for Cosmos DB\u2019s SQL API.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Announcing new Async Java SDK for Azure #CosmosDB | Microsoft Azure Blog\" \/>\n<meta property=\"og:description\" content=\"We\u2019re excited to announce a new asynchronous Java SDK for Cosmos DB\u2019s SQL API.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Azure Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/microsoftazure\" \/>\n<meta property=\"article:published_time\" content=\"2018-05-09T00:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-05-11T22:39:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp\" \/>\n<meta name=\"author\" content=\"Kirill Gavrylyuk\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@azure\" \/>\n<meta name=\"twitter:site\" content=\"@azure\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirill Gavrylyuk\" \/>\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:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/\"},\"author\":[{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/kirill-gavrylyuk\/\",\"@type\":\"Person\",\"@name\":\"Kirill Gavrylyuk\"}],\"headline\":\"Announcing new Async Java SDK for Azure #CosmosDB\",\"datePublished\":\"2018-05-09T00:00:00+00:00\",\"dateModified\":\"2023-05-11T22:39:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/\"},\"wordCount\":278,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp\",\"articleSection\":[\"Databases\",\"Internet of things\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/\",\"name\":\"Announcing new Async Java SDK for Azure #CosmosDB | Microsoft Azure Blog\",\"isPartOf\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp\",\"datePublished\":\"2018-05-09T00:00:00+00:00\",\"dateModified\":\"2023-05-11T22:39:40+00:00\",\"description\":\"We\u2019re excited to announce a new asynchronous Java SDK for Cosmos DB\u2019s SQL API.\",\"breadcrumb\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#primaryimage\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp\",\"contentUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog home\",\"item\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Databases\",\"item\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/category\/databases\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Announcing new Async Java SDK for Azure #CosmosDB\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#website\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\",\"name\":\"Microsoft Azure Blog\",\"description\":\"Get the latest Azure news, updates, and announcements from the Azure blog. From product updates to hot topics, hear from the Azure experts.\",\"publisher\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\",\"name\":\"Microsoft Azure Blog\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp\",\"contentUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp\",\"width\":512,\"height\":512,\"caption\":\"Microsoft Azure Blog\"},\"image\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/microsoftazure\",\"https:\/\/x.com\/azure\",\"https:\/\/www.instagram.com\/microsoftdeveloper\/\",\"https:\/\/www.linkedin.com\/company\/16188386\",\"https:\/\/www.youtube.com\/user\/windowsazure\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/person\/c702e5edd662b328b49b7e1180cab117\",\"name\":\"shakir\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g7664e653ea371ce16eaf75e9fa8952c4\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g\",\"caption\":\"shakir\"},\"sameAs\":[\"https:\/\/azure.microsoft.com\"],\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/shakir\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Announcing new Async Java SDK for Azure #CosmosDB | Microsoft Azure Blog","description":"We\u2019re excited to announce a new asynchronous Java SDK for Cosmos DB\u2019s SQL API.","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:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/","og_locale":"en_US","og_type":"article","og_title":"Announcing new Async Java SDK for Azure #CosmosDB | Microsoft Azure Blog","og_description":"We\u2019re excited to announce a new asynchronous Java SDK for Cosmos DB\u2019s SQL API.","og_url":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/","og_site_name":"Microsoft Azure Blog","article_publisher":"https:\/\/www.facebook.com\/microsoftazure","article_published_time":"2018-05-09T00:00:00+00:00","article_modified_time":"2023-05-11T22:39:40+00:00","og_image":[{"url":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp","type":"","width":"","height":""}],"author":"Kirill Gavrylyuk","twitter_card":"summary_large_image","twitter_creator":"@azure","twitter_site":"@azure","twitter_misc":{"Written by":"Kirill Gavrylyuk","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#article","isPartOf":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/"},"author":[{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/kirill-gavrylyuk\/","@type":"Person","@name":"Kirill Gavrylyuk"}],"headline":"Announcing new Async Java SDK for Azure #CosmosDB","datePublished":"2018-05-09T00:00:00+00:00","dateModified":"2023-05-11T22:39:40+00:00","mainEntityOfPage":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/"},"wordCount":278,"commentCount":0,"publisher":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization"},"image":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#primaryimage"},"thumbnailUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp","articleSection":["Databases","Internet of things"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/","name":"Announcing new Async Java SDK for Azure #CosmosDB | Microsoft Azure Blog","isPartOf":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#primaryimage"},"image":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#primaryimage"},"thumbnailUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp","datePublished":"2018-05-09T00:00:00+00:00","dateModified":"2023-05-11T22:39:40+00:00","description":"We\u2019re excited to announce a new asynchronous Java SDK for Cosmos DB\u2019s SQL API.","breadcrumb":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#primaryimage","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp","contentUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2018\/05\/ffa55d90-3a5a-4486-a0ee-d3c1b46e99df.webp"},{"@type":"BreadcrumbList","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-new-async-java-sdk-for-azure-cosmosdb\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog home","item":"https:\/\/azure.microsoft.com\/en-us\/blog\/"},{"@type":"ListItem","position":2,"name":"Databases","item":"https:\/\/azure.microsoft.com\/en-us\/blog\/category\/databases\/"},{"@type":"ListItem","position":3,"name":"Announcing new Async Java SDK for Azure #CosmosDB"}]},{"@type":"WebSite","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#website","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/","name":"Microsoft Azure Blog","description":"Get the latest Azure news, updates, and announcements from the Azure blog. From product updates to hot topics, hear from the Azure experts.","publisher":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/azure.microsoft.com\/en-us\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization","name":"Microsoft Azure Blog","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp","contentUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp","width":512,"height":512,"caption":"Microsoft Azure Blog"},"image":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/microsoftazure","https:\/\/x.com\/azure","https:\/\/www.instagram.com\/microsoftdeveloper\/","https:\/\/www.linkedin.com\/company\/16188386","https:\/\/www.youtube.com\/user\/windowsazure"]},{"@type":"Person","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/person\/c702e5edd662b328b49b7e1180cab117","name":"shakir","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g7664e653ea371ce16eaf75e9fa8952c4","url":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g","caption":"shakir"},"sameAs":["https:\/\/azure.microsoft.com"],"url":"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/shakir\/"}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Azure Blog","distributor_original_site_url":"https:\/\/azure.microsoft.com\/en-us\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts\/2738","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/comments?post=2738"}],"version-history":[{"count":0,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts\/2738\/revisions"}],"wp:attachment":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/media?parent=2738"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/categories?post=2738"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/tags?post=2738"},{"taxonomy":"audience","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/audience?post=2738"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/content-type?post=2738"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/product?post=2738"},{"taxonomy":"tech-community","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/tech-community?post=2738"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/topic?post=2738"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/coauthors?post=2738"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}