Atinary™ Nexus (1.1.0)

Download OpenAPI specification:

As part of Atinary™ Nexus, we offer a downloadable software development kit (SDK) client, which facilitates the access to the application programming interface (API) entry point. This API allows users to manage their project subscriptions and to share files among collaborators involved in the same project(s). The api usage requires an API KEY, associated to your Atinary™ Nexus account. You can generate your API KEY on your account information page.

Files

List, upload, download or delete files associated to a project

List available files for a project

List available files for a specific project. Note that only users subscribed to the project can list its files.

Authorizations:
api_keytokens
header Parameters
project-id
string (ProjectId) = 36 characters ^prj_[0-9a-f]{32}$
Example: prj_00000000000000000000000000000000

Required ID assigned to the project once created in Atinary™ Nexus.

group-type
string (GroupType) [ 5 .. 10 ] characters ^(parameters|properties|other)$
Example: parameters

String indicating how the file is classified. Available values are parameters, properties or other.

Responses

Response samples

Content type
application/json
{
  • "result": {
    },
  • "objects": [
    ],
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e"
}

Upload a file under a project

Upload a file under a specific project. Note that only users subscribed to the project can upload files to it.

Authorizations:
api_keytokens
query Parameters
project_id
required
string (ProjectId) = 36 characters ^prj_[0-9a-f]{32}$
Example: project_id=prj_00000000000000000000000000000000

ID assigned to the project once created in Atinary™ Nexus.

group_type
required
string (GroupType) [ 5 .. 10 ] characters ^(parameters|properties|other)$
Example: group_type=parameters

String indicating how the file is classified. Available values are parameters, properties or other.

Request Body schema: multipart/form-data
required

Form-data object containing the file to upload. Maximum size length is 500 MB. Allowed extensions are csv, json, txt, xml, yaml and yml.

file
required
string <binary> <= 524288000 characters

Responses

Response samples

Content type
application/json
{
  • "result": {
    },
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "object": {
    }
}

delete_files

Delete several files in a project.

Authorizations:
api_keytokens
header Parameters
project-id
string (ProjectId) = 36 characters ^prj_[0-9a-f]{32}$
Example: prj_00000000000000000000000000000000

Required ID assigned to the project once created in Atinary™ Nexus.

Request Body schema: application/json

Json object specifying the name.

ids
required
Array of strings (ids) [ 1 .. 500 ] items [ items = 36 characters ^fle_[0-9a-f]{32}$ ]

A comma separated list of file_id to delete.

Responses

Request samples

Content type
application/json
[
  • "fle_00000000000000000000000000000001",
  • "fle_00000000000000000000000000000002",
  • "fle_00000000000000000000000000000003"
]

Response samples

Content type
application/json

generic success response

{
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "result": {
    }
}

Delete a file

Delete a specific file. Note that every file belongs to a project and only users subscribed to that project are authorized to request deletions on it.

Authorizations:
api_keytokens
path Parameters
file_id
required
string (FileId) = 36 characters ^fle_[0-9a-f]{32}$
Example: fle_00000000000000000000000000000000

ID assigned to the file once it is uploaded.

Responses

Response samples

Content type
application/json

generic success response

{
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "result": {
    }
}

Download a file

Download a specific file. Note that every file belongs to a project and only users subscribed to the project are authorized to request downloads from it.

Authorizations:
api_keytokens
path Parameters
file_id
required
string (FileId) = 36 characters ^fle_[0-9a-f]{32}$
Example: fle_00000000000000000000000000000000

ID assigned to the file once it is uploaded.

Responses

Response samples

Content type
application/json
{
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "result": {
    }
}

Projects

List the projects you are subscribed to, create a new project, invite collaborators into an existing project or remove a subscription to a project

List project subscriptions

List individual project subscriptions.

Authorizations:
api_keytokens
query Parameters
group_id
string (group_id) [ 1 .. 128 ] characters ^[\w-]+$
Example: group_id=atinary_group

Group identifiers

Responses

Response samples

Content type
application/json
{
  • "result": {
    },
  • "objects": [
    ],
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e"
}

Create a new project

Create a new project by providing a project name. The user who calls this method is automatically added to the project and assigned as project owner. Note that if the user is already subscribed to a project with the same name the request will be denied.

Authorizations:
api_keytokens
Request Body schema: application/json

Json object specifying the name.

name
required
string (name) [ 1 .. 50 ] characters ^[ -~]+$

Name assigned to the project

description
string (description) [ 0 .. 255 ] characters ^[ -~]*$
Default: ""

Description of the project.

group_id
string (group_id) [ 1 .. 128 ] characters ^[\w-]+$

Group identifier (group name in this case)

Responses

Request samples

Content type
application/json
{
  • "group_id": "atinary_group",
  • "name": "my_project_name",
  • "description": "This project is made for testing purposes."
}

Response samples

Content type
application/json
{
  • "result": {
    },
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "object": {
    }
}

Delete a project

Delete a project. The project deletion causes the deletion of all files and subscriptions associated with it. Note that a project can only be deleted by the project owner.

Authorizations:
api_keytokens
path Parameters
project_id
required
string (ProjectId) = 36 characters ^prj_[0-9a-f]{32}$
Example: prj_00000000000000000000000000000000

ID assigned to the project once created in Atinary™ Nexus.

Responses

Response samples

Content type
application/json

generic success response

{
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "result": {
    }
}

Get project information

Get project information. List project id, project owner, members and creation date. Note that only users subscribed to the project can request for information on it.

Authorizations:
api_keytokens
path Parameters
project_id
required
string (ProjectId) = 36 characters ^prj_[0-9a-f]{32}$
Example: prj_00000000000000000000000000000000

ID assigned to the project once created in Atinary™ Nexus.

Responses

Response samples

Content type
application/json
{
  • "result": {
    },
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "object": {
    }
}

Update project name, description and owner

Update project name, description and owner

Authorizations:
api_keytokens
path Parameters
project_id
required
string (ProjectId) = 36 characters ^prj_[0-9a-f]{32}$
Example: prj_00000000000000000000000000000000

ID assigned to the project once created in Atinary™ Nexus.

Request Body schema: application/json

Json object containing new_name, new_description and/or new_owner. Note that only users subscribed to the project can be project owners. The project owner is the only one authorized to call this method.

new_name
string (name) [ 1 .. 50 ] characters ^[ -~]+$

Name assigned to the project

new_description
string (description) [ 0 .. 255 ] characters ^[ -~]*$
Default: ""

Description of the project.

new_owner
string <email> (Email) [ 4 .. 254 ] characters ^(?=[a-zA-Z0-9][a-zA-Z0-9@._%+-]{5,253}$)[a-z...

User email

Responses

Request samples

Content type
application/json
{
  • "new_owner": "user@domain.com",
  • "new_name": "my_project_name",
  • "new_description": "This project is made for testing purposes."
}

Response samples

Content type
application/json
{
  • "result": {
    },
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "object": {
    }
}

Add users to a project

Add users to a project. Note that only the project owner can add users to the project.

Authorizations:
api_keytokens
path Parameters
project_id
required
string (ProjectId) = 36 characters ^prj_[0-9a-f]{32}$
Example: prj_00000000000000000000000000000000

ID assigned to the project once created in Atinary™ Nexus.

Request Body schema: application/json

Json object containing the list of user emails to add to the project.

email_list
required
Array of strings <email> (email_list) [ 1 .. 50 ] items [ items <email > [ 4 .. 254 ] characters ^(?=[a-zA-Z0-9][a-zA-Z0-9@._%+-]{5,253}$)[a-z... ]

A comma separated list of user emails.

Responses

Request samples

Content type
application/json
{
  • "email_list": [
    ]
}

Response samples

Content type
application/json
{
  • "result": {
    },
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "object": {
    }
}

Unsubscribe from a project

Unsubscribe oneself from a project or unsubscribe members from a project. Note that: 1) to unsubscribe members from a project one needs to be project owner, and 2) the project owner can not unsubscribe from his own project.

Authorizations:
api_keytokens
path Parameters
project_id
required
string (ProjectId) = 36 characters ^prj_[0-9a-f]{32}$
Example: prj_00000000000000000000000000000000

ID assigned to the project once created in Atinary™ Nexus.

Request Body schema: application/json

Json object containing the list of user emails to unsubscribe from the project. If this list is empty, then the caller is unsubscribed from the project.

email_list
Array of strings or null <email> (email_list) <= 50 items [ items <email > [ 4 .. 254 ] characters ^(?=[a-zA-Z0-9][a-zA-Z0-9@._%+-]{5,253}$)[a-z... ]

A comma separated list of user emails.

Responses

Request samples

Content type
application/json
{
  • "email_list": [
    ]
}

Response samples

Content type
application/json
{
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "result": {
    }
}

Create the tutorial project

Create an example project containing a text file with some basic instructions on it.

Authorizations:
api_keytokens
query Parameters
group_id
string (group_id) [ 1 .. 128 ] characters ^[\w-]+$
Example: group_id=atinary_group

Group identifiers

Responses

Response samples

Content type
application/json
{
  • "result": {
    },
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "object": {
    }
}

Groups

Delete all projects in a group

Delete a Group. The group deletion causes the deletion of all projects, files, and subscriptions associated with it. Note that a group can only be deleted by an admin.

Authorizations:
api_keytokens
path Parameters
group_id
required
string (group_id) [ 1 .. 128 ] characters ^[\w-]+$
Example: atinary_group

Group identifiers

Responses

Response samples

Content type
application/json

generic success response

{
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "result": {
    }
}

Admin

Health check

The Healthcheck endpoint provides detailed information about the health of a web service.

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "generated_at": "2023-01-24T14:58:56.364996+02:00"
}

Service information.

Get service configuration information.

Authorizations:
api_keytokens

Responses

Response samples

Content type
application/json
{
  • "result": {
    },
  • "request_id": "a8098c1a-f86e-11da-bd1a-00112444be1e",
  • "object": {
    }
}