Extension

Extensions are small software programs that can customise the way you interact with any tech platform. It enables users and brands to tailor a platform's offerings and behaviour to suit their own needs or preferences. Extensions are built on web technologies such as HTML, JavaScript, and CSS.
Some examples of extensions could be Ad-blockers used on browsing platforms (Google chrome, safari etc) to restrict ads and pop-ups on various websites; Spellchecker, again used on browsing platforms, to autocorrect or identify spelling mistakes while typing emails or docs.

API extensions

API extensions are a specific type of extension used within a SaaS platform. They essentially act as mini-programs that hook into the core platform's API to modify or extend its functionalities. It also enable seamless communication and data exchange between software platforms and allow developers to leverage the capabilities of third-party services or integrate with external systems without needing to build everything from scratch

Some examples of API extensions used in SaaS industry specifically are:

  • Salesforce CRM Integration: Loyalty management platforms like Smile.io offer integration with Salesforce CRM, allowing businesses to synchronise customer data, track loyalty program performance, and create personalised loyalty experiences based on CRM data.
  • Shopify Integration: LoyaltyLion offers seamless integration with Shopify, enabling businesses to incorporate their loyalty programs directly into their Shopify-powered online stores. Customers can earn and redeem rewards seamlessly during the checkout process.
  • Lightspeed POS Integration: Kangaroo Rewards integrates with Lightspeed POS systems, enabling businesses to capture transaction data and award loyalty points or rewards in real-time. This integration streamlines the loyalty experience for both customers and staff at retail locations.

Example and use cases of API Extensions active on Capillary platform

Use Case : API enrichment through incoming data.

Examples:

  • Punch Calculator - Often used by companies in the travel and hospitality industry to calculate the loyalty points that need to be assigned to a customer based on hotel/room category. For example : a 1 night booking of a premium room in a 5 star hotel will be considered as 3 nights worth of loyalty points as compared to 1 night booking of a standard room in a 4 star room will be counted as only 1 night worth of loyalty points.
  • Air-Miles Calculator : Another example of API enrichment. Our API extension helps to calculate the distance between origin and destination based on the pre-defined airport list and their lat-long values. Airlines can use this data to issue points or other incentives to their customers based on flying data.

Use cases

API chaining

Example

Ledger API : When an API call is received, this extension intercepts the call, and makes subsequent API calls making it like a chain of API calls. Through this process, the extension helps to retrieve data from various sources with the cue from just 1 API call.

Re-mapping of APIs

Example

SOAP to REST API conversion : One of other use cases being addressed via Extensions is the ability to remap APIs of different formats and enable two systems with inherently different APIs to communicate with one another. With this extension, we convert SOAP API to RESTful format. SOAP is a type of legacy API protocol known for its reliability and robustness. However, with changing times, RESTful APIs (aka REST API) have become more popular in the last decade or so given their flexibility and ease of scale, most modern day apps and tech ops rely heavily on REST APIs.

What are we solving via Extensions?

The primary things that are solved via extensions are:

  • Helps to fill whitespaces in the core platform offerings, or build vertical/brand specific functionalities.
  • Gives developers more power and confidence to build on top of Capillary framework without having to worry about infra management.

Constituents of Extensions on Capillary:

  • Extensions : a piece of code that has certain functionality.
  • Extensions Framework (EF) : a basic framework that allows extensions to be plugged into the platform so that it can be served as a service.
  • EF Runtime : a running service that executes Extension and EF. Multiple runtimes can be created and different extensions can be registered/plugged into a particular runtime service.
  • Extensions Manager : list of API which manages the extensions and does jobs like - installing, registering, uninstalling etc.

Extensions Catalogue : A repository of existing extensions.

At present, the extensions act as API data enrichment and do not cover multiple use cases. In future releases, more use cases will be added to the extensions and will also enable users to search for extensions from a wide range of extensions collection.

To view the available and installed extensions, navigate to Intouch > Extensions.