In our Github Community, we recently share some SDK package in different langages as Python, Go, Angular, Ruby...
It's free access to help you to integrate your business workflow to Nodeum.
REST APIs are based on the HTTP (Hypertext Transfer Protocol) protocol which defines communication between clients and servers. It is designed to enable communications between clients and servers.
A web browser may be the client, and an application on a computer that hosts a web site may be the server.
Example: A client (browser) submits an HTTP request to the server; then the server returns a response to the client.
The response contains status information about the request and may also contain the requested content.
Different requests are available :
The client-server principle defines the two entities that interact in a REST API communication: a client and a server. A client sends a request, and the server returns a response ; it is important to understand that it is "stateless" communication ; this means that both work independently of each other ; the server has no idea what the client is doing between requests.
The Server responses for REST APIs can be delivered in multiple formats, JSON (JavaScript Object Notation) is the most often used.
Our API allows a tight integration between your business workflows and the dataset stored into your different storage. It allow for control of the Data Management straight from any source application. This results in an automated and highly efficient way of working.
We allow two different ways of getting the most of Nodeum :
The second option with the SDK is easy of use to directly integrate the available Methods into your application. We provide SDK in different languages including : GO, JAVA, Python, JS, Ruby.
Here is a GET request launched to the Nodeum API to obtain the list of files that have been archived on a storage volume 'MTC631' by a specific workflow:
GET http://nodeum/api/catalog/search?q=&volume_s_names=MTC631&cursor_mark=*
And here is the Nodeum response, in JSON format :
{
status: "SUCCESS",
code: 200,
results:[
{
file_path: "nodeum/video/VIDEO ARRI/reload/master/A9C001.0143000000.ari",
type: "files",
file_creation_date: "2019-04-11T12:57:48Z",
file_type: 1,
file_parent_path: "nodeum/video/VIDEO ARRI/reload/master",
parent_paths:
[
"nodeum/video/VIDEO ARRI/reload/master",
"MTC606/video/VIDEO ARRI/reload/master",
"MTC628/video/VIDEO ARRI/reload/master",
"MTC629/video/VIDEO ARRI/reload/master",
"MTC631/video/VIDEO ARRI/reload/master"
],
parent_descendent_paths:
[
"nodeum/video/VIDEO ARRI/reload/master",
"MTC606/video/VIDEO ARRI/reload/master",
"MTC628/video/VIDEO ARRI/reload/master",
"MTC629/video/VIDEO ARRI/reload/master",
"MTC631/video/VIDEO ARRI/reload/master"
],
id: "files_165667",
container_p_name: "video",
primary_name: "video",
file_modification_date: "2018-11-15T14:48:42Z",
file_name: "A9C001.0143000000.ari",
name: "A9C001.0143000000.ari",
file_size: 9550848,
file_base_name: "A9C001.0143000000",
file_in_cache: true,
file_extension: ".ari",
file_in_cache_date: "2019-04-11T12:57:48Z",
volume_s_paths:
[
….
As you can see, your application can access any contents that have been archived and protected across all of your storages ; and then you can view this information in your application or use it for data storage, etc.