Header image: REST API lettering against a background with source code

What is a REST API? The key to flexible system integration

Reading time: 9 minutes

Table of contents

Let’s start with the definitional question and look at the back end of the term:
The abbreviation API stands for application programming interface. Such an interface is used to connect other programs to a software system. In this process, data is exchanged at source code level.

REST stands for representational state transfer. We will explain later what this means exactly. For now, it is sufficient to remember that a REST API acts as an interface between distributed systems.

Digital Asset Management (DAM for short) is the technical term for managing digital media such as photos and videos. In this article, we will also look at the possibilities offered by a REST API when integrating DAM systems.

For what purposes is a REST API used?

REST APIs employ the familiar HTTP protocol and are used for web services that require the automated exchange of information between network applications.

For instance, an online service such as a web store can be connected to a company’s ERP or PIM system via a REST API. Another example would be the integration of a SharePoint instance to enable remote working on specific files.

These individual systems and applications can be set up differently and each have their own data formats and structures. The task of the REST API is then to establish a standardized form of communication between these systems.

6 principles of a REST API

The REST standard is based on the six principles listed below. They go back to the computer scientist Roy Fielding, who first described them entirely in 2000. An API in which all mandatory principles have been implemented is also referred to as RESTful. Principle 6 (code on demand) is optional.

1. Client-server architecture

The assumed separation of client (service user) and server is intended for distributing tasks. In practical terms, this means that services provided by a server (e.g. a database server) are requested via the user interface of a software. This makes it easier to scale the system, as both components can be developed independently of each other.

2. Statelessness

Requests from a client must contain all the information that the server needs to be able to process them. The server must not save any session data about the client. This also ensures scalability, as incoming requests can be distributed to any other machine.

3. Cacheability

Frequently occurring responses from a server should be cacheable, so as not to overload the server unnecessarily. For the data in the cache, however, it must be defined how long it is to be retained. This is necessary so that the client does not receive any outdated information.

4. Uniform interface

The interaction between client and server takes place according to uniform standards based on four conditions:

  1. Addressability of resources: A server resource can contain a wide variety of data, but it must be uniquely addressable via an URL.
  2. Resource manipulation through representations: Clients can interact with resources via data interchage formats such as JSON or XML. Such formats contain all the information required to modify or delete a resource.
  3. Self-descriptive messages: Messages must already contain the information required for interpretation by a client or server.
  4. HATEOAS (Hypermedia as the Engine of Application State): This means that clients can navigate dynamically through application resources using links embedded in the server responses.

5. Layered systems

Requests must be routable through independent network layers such as proxy servers or load balancers. The client or server code should not be changed. Such intermediate layers can greatly improve the performance and security of a system.

6. Code on demand (optional)

This principle states that the server may transfer code to the client for local execution if required.

The meaning of REST

Now we are also ready to give meaning to the term representational state transfer. It describes the transition from the current to the next state of an application. This state transition takes place through the transfer of representation data, which is accessed using standardized HTTP methods. These methods are also called HTTP verbs. We will therefore explain the five most important of these in the next section.

The 5 most important HTTP methods

  1. GET – Requests a specified resource from the server. The state on the server is not changed. GET is the most common HTTP method, as it is also required for retrieving web pages on the Internet.
  2. POST – Inserts a new resource below the one specified. The new resource link is returned as a result. POST is used, for example, for form entries or uploading files.
  3. PUT – The specified resource is created. If the resource already exists, it is changed. The PUT command is therefore important if content needs to be updated.
  4. DELETE – Deletes the specified resource.
  5. HEAD – Requests metadata for the specified resource.

Functional sketch of a REST API

Figure: REST API, Author: Seobility – License: CC BY-SA 4.0

Practical example: Accessing the DAM via REST API

Digital asset management (DAM) platforms enable companies to efficiently store, organize and distribute their digital content such as images, videos or documents. To integrate these contents (resources) into other applications, it can be useful to employ a REST API.

Retrieving and integrating an image into a website

Let us assume the following:

    • You want to integrate an image from a DAM platform into a website.
    • The DAM platform offers a REST API for accessing existing resources.

These four steps are now required to integrate an image:

Step 1: First, the resource must be identified. This is done via an URL. This could look like this, for example: https://mediahub.ai/api/File/Original/19b6da72-c3b5-40a1-ba63-c7d24a678721/REST-API.jpg

Step 2: An HTTP method can now be applied to the resource (in this case a raster graphic). To retrieve these, a GET request containing the above URL is sent. Such requests can be made using very different tools (cURL, Postman, etc.), shells (e.g. PowerShell), web browsers or programming languages.

Step 3: After processing the request, the DAM platform sends an HTTP response in which an interchange format such as JSON or XML ensures that the requested image is provided via a link or as a direct data stream.

Step 4: After receiving the response, the link or data stream can be used to display the image from the DAM platform on a web page.

Advantages of a REST API in the DAM sector

    • Flexibility: Developers can use the DAM content in a variety of ways and integrate it into different applications.
    • Scalability: REST APIs are stateless, which makes them ideal for scalable applications.
    • Easy integration: Because REST is based on HTTP, developers can access DAM content using standard web development tools and languages.
    • Independence: REST APIs are platform- and language-independent, which ensures maximum compatibility.

Conclusion

In summary, a REST API is a powerful and flexible programming interface for network applications. It is therefore mostly used to connect different software systems via the Internet. By using standardized HTTP methods, communication can be kept simple and efficient.

In the DAM sector, REST APIs also enable the integration of digital content into a wide range of applications and services. Thanks to such integrations, end users can access their organization’s media inventory directly from their preferred application. This not only speeds up the workflow, but also facilitates collaborative work.

Test the Media Hub from teamnext

The teamnext | Media Hub is a cloud-based DAM solution that can be seamlessly connected to existing systems. With our flexible REST API, we can also realize individual requests and connect the application of your choice to the Media Hub. Simply contact us about the possibility of a customized API integration.

In addition, the Media Hub features innovative AI functions while meeting the highest data security standards. It is therefore preferred by medium-sized companies in the DACH region as well as by large organizations within the EU. You can find more info about the product here: teamnext.com/product

If you would like to try out our solution after reading this, you can get started almost immediately with a free 14-day test phase. You can also book an appointment for a free online product demo with one of our experts at any time. Simply use our contact form for this purpose.

You might also be interested in

Symbolic image for Digital Rights Management (DRM)
Ruler and set square - symbolic image for social media image sizes and video resolutions
Symbolic image interconnectedness of PIM and DAM systems