The team at ResourceSpace have been a joy to work with, helping us manage what could've been a really difficult transition every step of the way.
What is an API?
9th July 2024
If you’ve ever worked with developers you’ve probably heard the acronym ‘API’ used a lot.
That’s because APIs are integral to so much of our activity online, or whenever we’re working with software applications. More and more of our digital activity requires multiple sites or programmes interfacing with each other, and it’s APIs that make this possible.
Let’s take a look at what an API actually is, how they work and how ResourceSpace implements a full RESTful API to enhance the out-of-the-box DAM system functionality.
API definition
An Application Programming Interface (API) facilitates communication between two software applications, enabling them to exchange data, features and functionality.
APIs also allow developers to integrate data, services and capabilities from other applications, instead of developing them from scratch. They can also be used to make data and functions available to different departments within an organisation, but APIs will only share the necessary information, keeping other internal system details hidden.
How APIs work
APIs work by sharing data through a request and response cycle. A request is sent to the API, which fetches the data required and returns it to the application making the request.
There are four stages to this request / response cycle:
- API client
- API request
- API server
- API response
Let’s take a look at each stage in more detail.
1. API client
The API client program—a tool that allows you to structure API requests easily—starts the communication by sending a message to the server, and this message can be sent in different ways.
For example, a user might send a message by typing a search term or clicking a button, while messages can also be sent automatically by other programs, like when one app sends a notification to another.
2. API request
API requests can vary in appearance and function depending on the type of API, but it usually includes these key components:
- Endpoint: A specific URL that gives access to a particular resource. For example, in a blogging app, the /articles endpoint would handle all requests related to articles.
- Method: This tells the server what kind of action to perform on the resource. REST APIs use standard HTTP methods for common actions like fetching, creating, updating and deleting data.
- Parameters: Variables sent to the endpoint to give specific instructions. They can be included in the URL, in the query string or in the request body. For example, the /articles endpoint might accept a ‘topic’ parameter to fetch articles on a particular subject.
- Request headers: Additional details sent with the request, like the type of content or authentication information.
- Request body: The main part of the request that includes the data needed to create, update or delete a resource. For example, when creating a new article in a blogging app, the body would include the article's content, title and author.
3. API server
The API client sends a request to the server, which then handles tasks like verifying user identity, checking the data for errors, and retrieving or updating the data.
4. API Response
At the end of the process, the API server sends a response back to the client, which usually includes these elements:
- Status code: These three-digit codes show the result of the request. Common codes include 200 OK (successful data return), 201 Created (new resource created), and 404 Not Found (requested resource not found).
- Response headers: Similar to request headers, these provide extra information about the server's response.
- Response body: This contains the data or content the client requested, or an error message if something went wrong.
How ResourceSpace uses a RESTful API
ResouceSpace already integrates with a wide range of systems that organisations like yours use everyday, including the Adobe suite, OpenAI’s GPT-4, and The Museum System (TMS), one of the most popular collections management systems used by major museums and heritage institutions around the world.
However, for systems that we don’t currently have an out-of-the-box integration for, ResourceSpace implements a full RESTful API.
A RESTful API , is a specific type of API that conforms to the REST architecture. This might sound technical, but fortunately thanks to the ubiquity of the REST architecture, your developers will know exactly how to use it in order to connect ResourceSpace with the rest of your tech stack.
The API provides access to many of ResourceSpace’s internal functions, while we also offer an API test tool that allows you to try out commands directly in the ResourceSpace interface prior to inclusion in your development environment.
Need support with a RESTful API integration? Check out our experienced integration partners.
To find out more about how ResourceSpace can be integrated into the different systems within your tech stack, why not get in touch with your enquiry. Alternatively, we can provide a full demo of the DAM platform where you can see some of these integrations in action. Book your free demo below.