Posts

Rajapinnat REST API

About API’s and their publicness

A modern application lives or dies based on the availability of its public API. Before having a deeper look into what API’s mean to us, and how they can be used in the most effective way, we should understand the basics.

API (Application Programming Interface) is an interface that allows the application data and functionality to be reached, as well as allowing for further programming of the program or a part of it, for example in regards to standard libraries. These interfaces can function on a very low level and deal with the inner functions of the application itself, for example calling open source libraries within the system. However this article only covers public API’s that are expandable or can be integrated and allow for the application data to be used in a variety of different ways.

API-centric architecture

Traditionally API’s have been considered to be an internal part of the application, or at the very least to be used as a means to integrate something to the application. Modern applications act as services, and this is why it’s important to make sure that expanding the system is just as easy as is the use of the data included in it. Modern applications use and offer a multitude of interfaces, for example social media applications like Facebook and LinkedIn are mainly run on interfaces with separate user interfaces built on top of them (e.g., browser, mobile, etc.).

In an API-centric architecture the applications connect to each other over these interfaces. How a single application has been built doesn’t matter as long as it follows the general practices in its interfaces. API-centric architecture also makes it easier to create device independent applications, so that for example the application can be run on multiple mobile operating systems using the same interface on them all.

 

Adeona_PIM_2017

RESTful API

Using general practices and de facto standards when connecting applications and using the data via different applications makes the whole process easy.

REST (Representational state transfer) is an stateless interface architecture model based on HTTP protocol. Typically REST API offers the information in JSON (JavaScript Object Notation) or in XML format. Our REST API’s use JSON, which is an open format based on readable text and attribute value pairs.

Public API

One of the main ideas of an API-centric architecture in that the interfaces are publicly available and that they contain a comprehensive documentation. Even a good interface will go unused if it’s hard to use or lacks documentation completely. In the best case scenario all the information and logic of the application can be reached via the API. This makes it flexible to connect, integrate and expand the system with needed applications.

Public API doesn’t however mean that all the information within the system would be publicly available. API calls are always authenticated so that the user will only have access to information they have credentials for.

More information:

https://en.wikipedia.org/wiki/Application_programming_interface
https://en.wikipedia.org/wiki/Representational_state_transfer

 

PIM has to be easy

At Canter we work each day to make product information management (PIM) as easy as possible. As with everything else, those who manage to make complex things easy will prevail, and this is also the case with product information management.

Although it’s not complex in the first place.

Or at least we don’t think it has to be, and following few principles will go long way. While company and industry specific differences do exist, the basic principle will always be the same.

PIM is not an IT project.

It is the implementation of new mode of operation that includes both change management and automation of manual processes. PIM system does not do everything automatically, but instead operates as enabler. In order to make product information management for our clients as easy as possible, we have focused especially on the following and been actively developing them.

Easy acquisition

We think that acquiring IT system should not be a complex task. Pricing models based on the amount of users or transactions direct the decision making incorrectly, and instead we think that it is more important to find out how to make most out of the usage and processes. The more our clients use the PIM system and the data it provides, the better are the benefits they can get out of it.

Easy acquisition also depends on:

  • the length of the contract – we believe in the added value we provide, not in long contracts
  • the possibility of starting with just simple specifications
  • what sort of training is included
  • how the client is supported with change management
  • the update guarantee

Easy deployment

Easy deployment of a system leads into powerful use. When the basis is solid, it is also easier to do change management.

Easy deployment means many things:

  • how well the specification workshops are managed and prepared
  • clear practices and industry-specific productization
  • ease of installation and parameterization of the system
  • functioning Application Program Interfaces (APIs) facilitate the integration
  • best practices and connectors to the most common systems

Easy usage

Easy-to-use user interface motivates the users to handle the upkeep of product information and benefit from the data.

Good user experience is the sum of its part, and listed are just few key points:

  • logical, reliable user interface
  • search functions that work faster than a though
  • smart recommendations
  • mass editing, importing and exporting; especially useful when dealing with large amount of products

Easy integration

Seldom does a PIM system operate alone, and usually it’s a part of at least one other system. It is very common to have it integrated with many other systems, for example with ERP or a webstore.

System integration needs to be easy, so well documented and standardized API makes it easier and faster for everyone. This allows the data to be exchanged between multiple systems without massive integration projects.

 Easy expansion and usage of data

We want to help our clients to benefit from their product information more effectively. When PIM interfaces are functional and open, it’s easy to build data-based applications with the help of product information. This allows for our clients to work with those they see fit themselves.

Could we help you to make your product information management easy as well? Contact us! 

 

Product Information Management in Excel

I regularly visit clients to advise them on product information management and publishing automation. It may be a client who is just planning to obtain a PIM system, and it may be an experienced one with fine-tuned processes. Quite often when I am doing a consulting or training call, they ask me,

What is the usual way for solving product information management?

My usual response is showing them a picture:

tuotetiedonhallinta_excel_english

But there is a truth to the joke. Too often product information management issues have been solved with several parallel and overlapping Excel files. Sometimes the process has not been thought out or no one knows of anything better.

Excel is excellent in many places. Even our PIM product allows for mass updating product data or retrieving product information for refining or running reports on it using Excel files. Excel can be used as a CRM system, a BI tool etc. Excel is also certain to be the most used PIM system. It is easy to understand why Excel would be chosen as the tool: it is inexpensive, and the data model is flexible and familiar to many. It is also relatively easy to use it to transfer information to other systems.

However, Excel is not for everything. As a centralised product database is rarely works even to an adequate degree. Here are some reasons why:

Information security How is it ensured that the product data master has been backed up? Are backups made of the Excel files? Does the entire company’s product information travel around the world in a single user’s laptop? If a user makes local changes, is the workstation backed up? If the user accidentally deletes an entire worksheet, what happens? Are modifications logged? Can it be traced who modified what and when?

Data model
Although it is possible to model a variety of information types in an Excel file, how easily will it support:

  • modelling the different data models of different products (and guiding data entry accordingly)
  • defining inter-product relations and links
  • adding and managing product images and attachments
  • managing categories, groups and classifications

It is also industrious to build different rules and logic sets in Excel. How is it specified that some element is required?

Multi-user support
How does an Excel file support multiple people using it concurrently? Is the information required by different roles in different files? How is the information kept up-to-date? Is the latest information always available in the shared workbook or do users have a local copy of the files?

Images
How are product-related images managed in an Excel PIM solution? Probably in a separate shared folder? How are suitable versions made of the images for different channels? Automation, even in the simplest of tasks, will become difficult or impossible.

Searchability
How easy is it to find the products in Excel? If the data model is the slightest bit complex, information has probably been distributed across several files. If there are dozens or hundreds of thousands of products and each has a couple hundred attributes, you will end up with dozens of millions of cells in Excel. Not very excellent.

Integrations
How easy is it to create genuine system integration between Excel and an online store? A modern PIM system provides interfaces that Excel users can only dream of. For example, a JSON-based REST interface provides marvellous opportunities for easy system integration.

Usability
Is the Excel user interface developed for efficient product information maintenance? Hardly.

Channels
In the world of PIM, we talk of channels. This means how product information is used in different sales and marketing channels. How easy is it, for example, to get information from Excel to electronic channels or automated material printing processes?

Contact us, and we’ll tell you more about a real solution for product information management.