<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>API on Technology Enlightened</title>
    <link>https://pprakash.me/tags/api/</link>
    <description>Recent content in API on Technology Enlightened</description>
    <generator>Hugo</generator>
    <language>en</language>
    <copyright>&amp;copy; &lt;a href=&#34;https://github.com/p-prakash/&#34;&gt;Prakash P&lt;/a&gt; 2015 - 2023</copyright>
    <lastBuildDate>Sun, 30 Oct 2022 20:00:00 +0000</lastBuildDate>
    <atom:link href="https://pprakash.me/tags/api/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Serverless API Backend for xBrowserSync on Azure</title>
      <link>https://pprakash.me/tech/2020/12/21/xbrowsersync-api-backend-azure/</link>
      <pubDate>Sun, 30 Oct 2022 20:00:00 +0000</pubDate>
      <guid>https://pprakash.me/tech/2020/12/21/xbrowsersync-api-backend-azure/</guid>
      <description>&lt;p&gt;I have been using &lt;a href=&#34;https://www.xbrowsersync.org/&#34;&gt;xBrowserSync&lt;/a&gt; for two years now with my own API Backend. In this post we will look at deploying the xBrowserSync API backedn using the serverless technologies on Microsoft Azure&lt;/p&gt;&#xA;&lt;p&gt;I used CosmosDB to persist the data, CosmosDB supports &lt;a href=&#34;https://learn.microsoft.com/en-us/azure/cosmos-db/concepts-limits#per-item-limits&#34;&gt;per item size of up to 2MB&lt;/a&gt;. Hence I set the size limit to 1.5MB and configured it to &lt;a href=&#34;https://learn.microsoft.com/en-us/azure/cosmos-db/serverless&#34;&gt;serverless mode&lt;/a&gt; as to pay only for the used read/write capacity units. One Azure functions have been used to handle create-bookmark, updat-bookmark, and get details from CosmosDB operations. Using &lt;a href=&#34;https://learn.microsoft.com/en-us/azure/api-management/api-management-features&#34;&gt;Azure API Management consumption plan&lt;/a&gt;, I have configured APIs to invoke this Azure function.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Serverless API Backend for xBrowserSync</title>
      <link>https://pprakash.me/tech/2020/12/21/xbrowsersync-serverless-api-backed/</link>
      <pubDate>Mon, 21 Dec 2020 16:00:00 +0000</pubDate>
      <guid>https://pprakash.me/tech/2020/12/21/xbrowsersync-serverless-api-backed/</guid>
      <description>&lt;p&gt;Ever since &lt;a href=&#34;https://web.archive.org/web/20180401124824/https://www.ghacks.net/2018/03/31/logmein-to-shut-down-xmarks-on-may-1-2018/&#34;&gt;Xmarks Sync was shutdown by LogMeIn(LastPass)&lt;/a&gt;, I was looking for a better cross browser &amp;amp; cross device bookmark synchronization service. While reviewing &lt;a href=&#34;https://privacytools.io/browsers/#addons&#34;&gt;PrivacyTools&lt;/a&gt; I came across &lt;a href=&#34;https://www.xbrowsersync.org/&#34;&gt;xBrowserSync&lt;/a&gt; which looked like a better alternative.&lt;/p&gt;&#xA;&lt;p&gt;I liked the way it has been implemented using &lt;code&gt;SHA-256&lt;/code&gt; hash, &lt;code&gt;250000&lt;/code&gt; iterations and &lt;code&gt;AES-GCM&lt;/code&gt; algorithm to generate the hash of the custom password provided. Additionally, xBrowserSync provides a way to configure your own API backend where you store your information. There is already an open source implementation of &lt;a href=&#34;https://github.com/xbrowsersync/api&#34;&gt;xBrowserSync API&lt;/a&gt; and &lt;a href=&#34;https://github.com/xbrowsersync/api-docker/blob/master/README.md&#34;&gt;a docker version&lt;/a&gt; available.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
