Back to top

Labfolder ELN API v2 Beta

Latest

Pre-Release Notice

This API is still under active development. This means endpoint semantics and formats might change as we finalize the implementation. There may still be some bugs as well, but we believe getting it into the hands of our users sooner will help the process move faster.

Optional fields might be added to requests and additional fields might be added to responses without notice. To ensure the smoothes possible transition please make sure your code does not rely on the exact object structure returned and ignores unknown properties.

“null” values

We’re aware of an issue with the library that we use to generate the API documentation in which nullable string properties are represented with the value "null" in the documentation. The API will never return “null” (as a string), only either a valid id (in string form “12345”) or null.

As an example, see the properties group_id and folder_id under the List Projects resource

Version

This is API v2 build #

56a500d58e70347dbbbe88330eac687e13eaeec9

Access

Location

The API can only be accessed via HTTPS.

You can reach the API for the cloud instance at

https://eln.labfolder.com/api/v2/

Local installations can access the API using the respective domain with the path /api/v2/ appended.

So if your server is reachable at https://labfolder.mycompany.lan the API endpoint is located at

# Note: `/api/v2/` is appended to the standalone server url

https://labfolder.mycompany.lan/api/v2/

Authentication

Requests to the API have to be authenticated using an API token which is received after successfully providing your application credentials to the API.

Once acquired the token can either be provided as the username field for HTTP-Basic authentication (useful for commandline access) or set in the Authorization header using other tools.

The following examples illustrate the two different ways to provide the token when using curl

# via HTTP-Basic
# Note the proceeding ':'

> curl -u "$LABFOLDER_API_TOKEN:" <API_RESOURCE_PATH_GOES_HERE>
# via Authorization header
# Note the format is "Authorization: Token xxxxxx"

> curl -H "Authorization: Token $LABFOLDER_API_TOKEN" <API_RESOURCE_PATH_GOES_HERE>

Endpoints

Login - Generate Token
POST/auth/login

Generate a token which can be used to make API requests.

Example URI

POST /auth/login
Request  Generate Token
HideShow
Headers
Content-Type: application/json
Body
{
  "user": "luke.skywalker@starwars.com",
  "password": "password"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "user": {
      "type": "string",
      "description": "email of the user"
    },
    "password": {
      "type": "string",
      "description": "password of the user"
    }
  },
  "required": [
    "user",
    "password"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "token": "MTZmNTigNWMtNWJ34y00NDgwL12wM2ItZTM4NzFGYzU1NTJm",
  "expires": "2017-09-04T13:27:55.641+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "token": {
      "type": "string",
      "description": "generated token"
    },
    "expires": {
      "type": "string",
      "description": "expiration date of the token"
    }
  },
  "required": [
    "token",
    "expires"
  ]
}

Logout - Invalidate Tokens
POST/auth/logout

Invalidate all API access tokens.

Example URI

POST /auth/logout
Response  204

Concepts

User Agent Required

All requests MUST include a User-Agent header. Please include the name of your application and your e-mail address so we can contact you if needed.

User-Agent: My Application; email@domain.tld

if you do not provide a User-Agent we will return a 400 Bad Request.

Parameters & Body Format

Some GET requests can take optional parameters which are included in the query string and must be UTF-8 encoded.

# Example query string usage

?offset=0&limit=20&sort=-title

The body format of POST, PATCH, PUT, and DELETE request is JSON and the corresponding Content-Type header must be set to application/json.

# Set Content-Type header and provide JSON body

> curl -u "${LABFOLDER_API_TOKEN}:" -H "Content-Type: application/json" -X POST -d {...JSON...} <API_RESOURCE_PATH_GOES_HERE>

File upload formats

For an upload of a file you can send pure arbitrary byte data in the request.
However, you may also choose to upload a file using Base64 encoding. To do so, it is required to add the header Content-Transfer-Encoding : base64, and the body should contain contents of the file as Base64 string.

Compression

All requests including Accept-Encoding: gzip header wil get compressed content as response.

Accept-Encoding: gzip

if you do not provide Accept-Encoding we will return uncompressed content.

Skipping Response Body

When creating or updating a resource the API can be configured to not return the resulting object in the message body. This can be accomplished by providing a custom header with the request:

`X-LF-SKIP-BODY: true`

No message body will be provided in the response and the HTTP response code will be 204. This may be useful in situations where minimizing bandwidth is a concern and when the resulting resource size is large (for example: table elements or text elements).

Note: if the header is not provided or when a value other than true is given it will be ignored and the API will default to returning the full message body.

Pagination

Some requests return paginated results of items (usually 20 at a time). Paginated items will be returned as a JSON array:

[
    {...some JSON...},
    {...some JSON...},
    {...some JSON...},
    {...some JSON...}
]

The total amount of found items will be available in a header X-Total-Count. This header will always be present for pageable requests.

You can control the offset and number of results returned by adjusting the offset and limit query parameters. All endpoints will limit the number of results returned by the limit parameter and fallback on the allowed maximum if you request too many items. The usual maximum for offset is 50 items but may differ by endpoint.

curl -H "Authorization: Token $LABFOLDER_API_TOKEN" <API_RESOURCE_PATH_GOES_HERE>?limit=1000

[
    {...some JSON...},
    {...some JSON...},
    {...some JSON...},
    {...some JSON...}
]

Client Errors

Client errors are denoted as a 4XX response code. All errors will return JSON with a message attribute explaining what went wrong.

{
    "status": 400,
    "message": "Unable to parse JSON"
}

There are several types of errors:

Authentication and authorization related errors

These will return either a 401 Unauthorized on missing authentication or a 403 Forbidden on missing authorization.

Invalid requests because of invalid HTTP verbs or media types

These will return a 405 Method Not Allowed or 415 Unsupported Media Type respectively.

Missing parameters or invalid body format

A 400 Bad Request is usually returned in case of missing parameters or an invalid body format. The latter could be because of invalid JSON or the wrong object shape (e.g. wrong nesting of objects).

Validation errors

A 422 Unprocessable Entity is returned if the body format is correct but the entity did not pass validation. This denotes a wrong user input and can potentially be signalled to the user.

Timezones & Date Format

Date Format

In general the API returns and expects dates & times in the ISO 8601 format including the timezone specification. For example: 2017-02-27T17:05:06.000+0100 for a time or 2017-02-27 for a date.

Timezone

The date time will be returned in the timezone of the server.

Data Access

According to the provided authentication token the requesting user is identified.

Full List Requests

On full list requests, the returned entities always contain all user accessible data and not only the user self-created content, as far as not mentioned differently in the endpoint description.

Groups

Groups

Get Groups
GET/groups{?type,limit,offset}

Returns all the top level groups (subgroups are not returned) that user belongs to.

Example URI

GET /groups?type=BASIC&limit=&offset=
URI Parameters
HideShow
type
string (optional) Example: BASIC

Group type to be filtered

Choices: BASIC ADVANCED

limit
number (optional) Default: 20 

Maximum number of groups to return

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
X-Total-Count: 1
X-Limit: 20
X-Offset: 0
Body
[
  {
    "title": "Luke's Private Group",
    "description": "This group is intended to be used for private projects",
    "id": "46123",
    "owner_id": "11038",
    "type": "BASIC",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version_date": "2017-02-15T12:34:56.789+0200"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "title": {
        "type": "string",
        "description": "the display title of the group"
      },
      "description": {
        "type": "string",
        "description": "details about the group usage, functionality, etc."
      },
      "id": {
        "type": "string",
        "description": "the unique id of the group"
      },
      "owner_id": {
        "type": "string",
        "description": "the id of the group owner"
      },
      "type": {
        "type": "string",
        "enum": [
          "BASIC",
          "ADVANCED"
        ],
        "description": "the type of the group"
      },
      "creation_date": {
        "type": "string",
        "description": "date when the group was created"
      },
      "version_date": {
        "type": "string",
        "description": "date when the group was last modified"
      }
    },
    "required": [
      "title",
      "id",
      "owner_id",
      "type",
      "creation_date",
      "version_date"
    ]
  }
}

Group

Get Group
GET/groups/{id}

Returns the specified group.

Example URI

GET /groups/1200
URI Parameters
HideShow
id
string (required) Example: 1200

id of the group

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "title": "Luke's Private Group",
  "description": "This group is intended to be used for private projects",
  "id": "46123",
  "owner_id": "11038",
  "type": "BASIC",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the group"
    },
    "description": {
      "type": "string",
      "description": "details about the group usage, functionality, etc."
    },
    "id": {
      "type": "string",
      "description": "the unique id of the group"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the group owner"
    },
    "type": {
      "type": "string",
      "enum": [
        "BASIC",
        "ADVANCED"
      ],
      "description": "the type of the group"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the group was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the group was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "type",
    "creation_date",
    "version_date"
  ],
  "additionalProperties": false
}

Get Group Tree
GET/groups/{id}/tree

Returns tree of group, it’s subgroup and members

Example URI

GET /groups/1200/tree
URI Parameters
HideShow
id
string (required) Example: 1200

id of the group.

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "id": "1200",
  "name": "Rebellion",
  "children": [
    {
      "id": "12585",
      "admin": false,
      "user": {
        "id": "3857",
        "first_name": "Luke",
        "last_name": "Skywalker",
        "email": "luke.skywalker@starwars.com",
        "profile_picture_hash": "abc"
      },
      "type": "MEMBER"
    },
    {
      "id": "12585",
      "title": "Rogue One",
      "type": "SUBGROUP",
      "children": [
        {
          "id": "12585",
          "admin": false,
          "user": {
            "id": "3857",
            "first_name": "Luke",
            "last_name": "Skywalker",
            "email": "luke.skywalker@starwars.com",
            "profile_picture_hash": "abc"
          },
          "type": "MEMBER"
        },
        {}
      ]
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the id of the group"
    },
    "name": {
      "type": "string",
      "description": "name of the group"
    },
    "children": {
      "type": "array",
      "description": "child members and subgroups will be represented recursively"
    }
  },
  "required": [
    "id",
    "name",
    "children"
  ],
  "additionalProperties": false
}

Subgroups Resource

Get Subgroups
GET/groups/{id}/subgroups{?parent_id,only_root_level,limit,offset}

Returns subgroups of the group

Example URI

GET /groups/1200/subgroups?parent_id=&only_root_level=&limit=&offset=
URI Parameters
HideShow
id
string (required) Example: 1200

id of the group

parent_id
string (optional) 

Only return subgroups that reside within the specified subgroup

only_root_level
boolean (optional) Default: false 

Only return root (top) level subgroups - I.e. subgroups that do not reside within a subgroup

limit
number (optional) Default: 20 

Maximum number of subgroups to return

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "id": "12585",
    "title": "Rogue One",
    "group_id": "1200",
    "parent_id": "12587"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "the unique identifier of the subgroup"
      },
      "title": {
        "type": "string",
        "description": "the title of the subgroup"
      },
      "group_id": {
        "type": "string",
        "description": "the id of the group this subgroup is part of"
      },
      "parent_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "the subgroup id to which this subgroup is subordinate"
      }
    },
    "required": [
      "id",
      "title",
      "group_id",
      "parent_id"
    ]
  }
}

Group Memberships

Get Group Memberships
GET/groups/{id}/memberships{?subgroup_id,user_id,project_ids,project_folder_ids,only_root_level,limit,offset}

Returns memberships of users in a group

Example URI

GET /groups/1200/memberships?subgroup_id=234&user_id=11040&project_ids=36275&project_folder_ids=36274&only_root_level=true&limit=&offset=
URI Parameters
HideShow
id
string (required) Example: 1200

id of the group

subgroup_id
string (optional) Example: 234

Only return group members that reside within the specified subgroup

user_id
string (optional) Example: 11040

Only return membership information for the specified user

project_ids
array[string] (optional) Example: 36275

Comma separated list of project ids that have to be accessible for the group members

project_folder_ids
array[string] (optional) Example: 36274

Comma separated list of project folder ids that have to be accessible for the group members

only_root_level
boolean (optional) Default: false Example: true

Only return root (top) level group members - I.e. members that do not reside within a subgroup

limit
number (optional) Default: 20 

Maximum number of subgroups to return

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "id": "12585",
    "group_id": "1200",
    "subgroup_id": "12587",
    "admin": false,
    "user": {
      "id": "3857",
      "first_name": "Luke",
      "last_name": "Skywalker",
      "email": "luke.skywalker@starwars.com"
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "the unique identifier of the group membership"
      },
      "group_id": {
        "type": "string",
        "description": "the id of the group this member belongs to"
      },
      "subgroup_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "the id of the subgroup this member belongs to"
      },
      "admin": {
        "type": "boolean",
        "description": "indicator if the group member is admin in this group"
      },
      "user": {
        "type": "object",
        "properties": {
          "id": {
            "type": [
              "string",
              "null"
            ],
            "description": "unique user id of the group member"
          },
          "first_name": {
            "type": [
              "string",
              "null"
            ],
            "description": "first name of the member. Not defined if this member has a pending group invitation"
          },
          "last_name": {
            "type": [
              "string",
              "null"
            ],
            "description": "last name of the member. Not defined if this member has a pending group invitation"
          },
          "email": {
            "type": "string",
            "description": "email address of the member"
          }
        },
        "required": [
          "id",
          "first_name",
          "last_name",
          "email"
        ],
        "description": "user identity entity of the group member"
      }
    },
    "required": [
      "id",
      "group_id",
      "subgroup_id",
      "admin",
      "user"
    ]
  }
}

Projects

Projects Resource

List Projects
GET/projects{?group_id,owner_id,only_root_level,folder_id,project_ids,expand,limit,offset}

Returns a list of projects the user has access to.

Example URI

GET /projects?group_id=1200&owner_id=11038&only_root_level=true&folder_id=36274&project_ids=36279&expand=owner&limit=&offset=
URI Parameters
HideShow
group_id
string (optional) Example: 1200

Only return the projects that belong to the specified group

owner_id
string (optional) Example: 11038

Only return the projects that are owned by the given user

only_root_level
boolean (optional) Default: false Example: true

Only return root (top) level projects - I.e. projects that do not reside within a folder

folder_id
string (optional) Example: 36274

Only return projects that reside within the specified folder

project_ids
array[string] (optional) Example: 36279

A comma separated list of project ids specifying the projects to be returned

expand
string (optional) Example: owner

A comma separated list of related domain objects that should be expanded for all items returned

Choices: owner

limit
number (optional) Default: 20 

Maximum number of projects to return

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
X-Total-Count: 1
X-Limit: 20
X-Offset: 0
Body
[
  {
    "title": "Luke's Private Project",
    "id": "46123",
    "owner_id": "11038",
    "group_id": "null",
    "folder_id": "null",
    "hidden": false,
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version_date": "2017-02-15T12:34:56.789+0200"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "title": {
        "type": "string",
        "description": "the display name of the project"
      },
      "id": {
        "type": "string",
        "description": "the unique id of the project"
      },
      "owner_id": {
        "type": "string",
        "description": "the id of the project owner"
      },
      "group_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "the id of the group to which the project is associated"
      },
      "folder_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "the id of the folder in which the project is stored"
      },
      "hidden": {
        "type": "boolean",
        "description": "indicating if the project is hidden"
      },
      "creation_date": {
        "type": "string",
        "description": "date when the project was created"
      },
      "version_date": {
        "type": "string",
        "description": "date when the project was last modified"
      }
    },
    "required": [
      "title",
      "id",
      "owner_id",
      "group_id",
      "folder_id",
      "hidden",
      "creation_date",
      "version_date"
    ]
  }
}

Create Project
POST/projects

Create a project

Example URI

POST /projects
Request  Create Private Project
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Project"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the project"
    }
  },
  "required": [
    "title"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /projects/1234
Body
{
  "title": "Luke's Private Project",
  "id": "46123",
  "owner_id": "11038",
  "group_id": "null",
  "folder_id": "null",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the project"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the project"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the project owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the project is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the project is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the project is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the project was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the project was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ]
}
Request  Create Private Project in a Folder
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Project",
  "folder_id": "36273"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the project"
    },
    "folder_id": {
      "type": "string",
      "description": "the id of the folder in which the project is stored"
    }
  },
  "required": [
    "title",
    "folder_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /projects/1234
Body
{
  "title": "Luke's Private Project",
  "id": "46123",
  "owner_id": "11038",
  "group_id": "null",
  "folder_id": "36273",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the project"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the project"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the project owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the project is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the project is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the project is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the project was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the project was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ]
}
Request  Create Group Project
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Project",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the project"
    },
    "group_id": {
      "type": "string",
      "description": "the id of the group to which the project is associated"
    }
  },
  "required": [
    "title",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /projects/1234
Body
{
  "title": "Luke's Private Project",
  "id": "46123",
  "owner_id": "11038",
  "group_id": "1200",
  "folder_id": "null",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the project"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the project"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the project owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the project is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the project is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the project is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the project was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the project was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ]
}
Request  Create Group Project in a Folder
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Project",
  "folder_id": "36274",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the project"
    },
    "folder_id": {
      "type": "string",
      "description": "the id of the folder in which the project is stored"
    },
    "group_id": {
      "type": "string",
      "description": "the id of the group to which the project is associated"
    }
  },
  "required": [
    "title",
    "folder_id",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /projects/1234
Body
{
  "title": "Luke's Private Project",
  "id": "46123",
  "owner_id": "11038",
  "group_id": "1200",
  "folder_id": "36273",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the project"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the project"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the project owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the project is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the project is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the project is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the project was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the project was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ]
}

Folders

Folders Resource

List Folders
GET/folders{?group_id,owner_id,only_root_level,content_type,parent_folder_id,folder_ids,limit,offset}

Returns a list of folders the user has access to.

Example URI

GET /folders?group_id=1200&owner_id=11038&only_root_level=true&content_type=&parent_folder_id=36274&folder_ids=36278&limit=&offset=
URI Parameters
HideShow
group_id
string (optional) Example: 1200

Only return the folders that belong to the specified group

owner_id
string (optional) Example: 11038

Only return the folders that are owned by the given user

only_root_level
boolean (optional) Default: false Example: true

Only return root (top) level folders - I.e. folders that do not reside within another folder

content_type
string (optional) Default: PROJECTS 

The desired type of folders to retrieve

Choices: PROJECTS TEMPLATES

parent_folder_id
string (optional) Example: 36274

Only return folders that reside within the specified folder

folder_ids
array[string] (optional) Example: 36278

A comma separated list of project ids specifying the projects to be returned

limit
number (optional) Default: 20 

Maximum number of folders to return

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
X-Total-Count: 1
X-Limit: 20
X-Offset: 0
Body
[
  {
    "id": "46123",
    "title": "Luke's Folder",
    "owner_id": "11038",
    "group_id": "1200",
    "parent_folder_id": "null",
    "hidden": false,
    "content_type": "Hello, world!",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version_date": "2017-02-15T12:34:56.789+0200"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "the unique id of the folder"
      },
      "title": {
        "type": "string",
        "description": "the display name of the folder"
      },
      "owner_id": {
        "type": "string",
        "description": "the id of the folder owner"
      },
      "group_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "the id of the group to which the folder is associated"
      },
      "parent_folder_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "the id of the folder in which the folder is stored"
      },
      "hidden": {
        "type": "boolean",
        "description": "indicating if the folder is hidden"
      },
      "content_type": {
        "type": "string",
        "enum": [
          "'PROJECTS'",
          "'TEMPLATES'",
          "Default: 'PROJECTS'",
          "PROJECTS"
        ],
        "description": "indicates if this folder holds Projects or Templates"
      },
      "creation_date": {
        "type": "string",
        "description": "date when the folder was created"
      },
      "version_date": {
        "type": "string",
        "description": "date when the folder was last modified"
      }
    },
    "required": [
      "id",
      "title",
      "owner_id",
      "group_id",
      "parent_folder_id",
      "hidden",
      "content_type",
      "creation_date",
      "version_date"
    ]
  }
}

Create Folder
POST/folders

Create a folder. A folder may either contain projects or templates, as well as children folders of the same type. A private folder is intended for your use only, while a group folder may be shared with the members of that group.

Example URI

POST /folders
Request  Create top-level Private Folder to hold Projects
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Folder",
  "content_type": "PROJECTS"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "'PROJECTS'",
        "'TEMPLATES'",
        "Default: 'PROJECTS'",
        "PROJECTS"
      ],
      "description": "indicate if the folder should hold Projects or Templates"
    }
  },
  "required": [
    "title"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /folders/46123
Body
{
  "id": "46123",
  "title": "Luke's Private Folder",
  "owner_id": "11038",
  "group_id": "null",
  "parent_folder_id": "null",
  "hidden": false,
  "content_type": "PROJECTS",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the folder"
    },
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the folder owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the folder is associated"
    },
    "parent_folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the folder is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the folder is hidden"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "'PROJECTS'",
        "'TEMPLATES'",
        "Default: 'PROJECTS'",
        "PROJECTS"
      ],
      "description": "indicates if this folder holds Projects or Templates"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the folder was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the folder was last modified"
    }
  },
  "required": [
    "id",
    "title",
    "owner_id",
    "group_id",
    "parent_folder_id",
    "hidden",
    "content_type",
    "creation_date",
    "version_date"
  ]
}
Request  Create top-level Private Folder to hold Templates
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Folder",
  "content_type": "TEMPLATES"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "content_type": {
      "type": "string",
      "description": "indicate if the folder should hold Projects or Templates"
    }
  },
  "required": [
    "title"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /folders/46123
Body
{
  "id": "46123",
  "title": "Luke's Private Folder",
  "owner_id": "11038",
  "group_id": "null",
  "parent_folder_id": "null",
  "hidden": false,
  "content_type": "TEMPLATES",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the folder"
    },
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the folder owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the folder is associated"
    },
    "parent_folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the folder is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the folder is hidden"
    },
    "content_type": {
      "type": "string",
      "description": "indicates if this folder holds Projects or Templates"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the folder was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the folder was last modified"
    }
  },
  "required": [
    "id",
    "title",
    "owner_id",
    "group_id",
    "parent_folder_id",
    "hidden",
    "content_type",
    "creation_date",
    "version_date"
  ]
}
Request  Create Private Folder as a Child of an Existing Private Folder
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Folder",
  "content_type": "PROJECTS",
  "parent_folder_id": "36273"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "'PROJECTS'",
        "'TEMPLATES'",
        "Default: 'PROJECTS'",
        "PROJECTS"
      ],
      "description": "indicate if the folder should hold Projects or Templates"
    },
    "parent_folder_id": {
      "type": "string"
    }
  },
  "required": [
    "title"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /folders/46123
Body
{
  "id": "46123",
  "title": "Luke's Private Folder",
  "owner_id": "11038",
  "group_id": "null",
  "parent_folder_id": "36273",
  "hidden": false,
  "content_type": "PROJECTS",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the folder"
    },
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the folder owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the folder is associated"
    },
    "parent_folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the folder is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the folder is hidden"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "'PROJECTS'",
        "'TEMPLATES'",
        "Default: 'PROJECTS'",
        "PROJECTS"
      ],
      "description": "indicates if this folder holds Projects or Templates"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the folder was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the folder was last modified"
    }
  },
  "required": [
    "id",
    "title",
    "owner_id",
    "group_id",
    "parent_folder_id",
    "hidden",
    "content_type",
    "creation_date",
    "version_date"
  ]
}
Request  Create a top-level Group Folder to hold Projects
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Group Folder",
  "content_type": "PROJECTS",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "'PROJECTS'",
        "'TEMPLATES'",
        "Default: 'PROJECTS'",
        "PROJECTS"
      ],
      "description": "indicate if the folder should hold Projects or Templates"
    },
    "group_id": {
      "type": "string",
      "description": "the id of the group to which the folder is associated"
    }
  },
  "required": [
    "title",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /folders/46123
Body
{
  "id": "46123",
  "title": "Group Folder",
  "owner_id": "11038",
  "group_id": "1200",
  "parent_folder_id": "null",
  "hidden": false,
  "content_type": "PROJECTS",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the folder"
    },
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the folder owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the folder is associated"
    },
    "parent_folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the folder is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the folder is hidden"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "'PROJECTS'",
        "'TEMPLATES'",
        "Default: 'PROJECTS'",
        "PROJECTS"
      ],
      "description": "indicates if this folder holds Projects or Templates"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the folder was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the folder was last modified"
    }
  },
  "required": [
    "id",
    "title",
    "owner_id",
    "group_id",
    "parent_folder_id",
    "hidden",
    "content_type",
    "creation_date",
    "version_date"
  ]
}
Request  Create a top-level Group Folder to hold Templates
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Group Folder",
  "content_type": "TEMPLATES",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "content_type": {
      "type": "string",
      "description": "indicate if the folder should hold Projects or Templates"
    },
    "group_id": {
      "type": "string",
      "description": "the id of the group to which the folder is associated"
    }
  },
  "required": [
    "title",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /folders/46123
Body
{
  "id": "46123",
  "title": "Group Folder",
  "owner_id": "11038",
  "group_id": "1200",
  "parent_folder_id": "null",
  "hidden": false,
  "content_type": "TEMPLATES",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the folder"
    },
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the folder owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the folder is associated"
    },
    "parent_folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the folder is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the folder is hidden"
    },
    "content_type": {
      "type": "string",
      "description": "indicates if this folder holds Projects or Templates"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the folder was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the folder was last modified"
    }
  },
  "required": [
    "id",
    "title",
    "owner_id",
    "group_id",
    "parent_folder_id",
    "hidden",
    "content_type",
    "creation_date",
    "version_date"
  ]
}
Request  Create Group Folder as a Child of an Existing Group Folder
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Group Folder",
  "content_type": "PROJECTS",
  "group_id": "1200",
  "parent_folder_id": "36274"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "'PROJECTS'",
        "'TEMPLATES'",
        "Default: 'PROJECTS'",
        "PROJECTS"
      ],
      "description": "indicate if the folder should hold Projects or Templates"
    },
    "group_id": {
      "type": "string",
      "description": "the id of the group to which the folder is associated"
    },
    "parent_folder_id": {
      "type": "string"
    }
  },
  "required": [
    "title",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /projects/46123
Body
{
  "id": "46123",
  "title": "Group Folder",
  "owner_id": "11038",
  "group_id": "1200",
  "parent_folder_id": "36274",
  "hidden": false,
  "content_type": "PROJECTS",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the folder"
    },
    "title": {
      "type": "string",
      "description": "the display name of the folder"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the folder owner"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the folder is associated"
    },
    "parent_folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the folder is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the folder is hidden"
    },
    "content_type": {
      "type": "string",
      "enum": [
        "'PROJECTS'",
        "'TEMPLATES'",
        "Default: 'PROJECTS'",
        "PROJECTS"
      ],
      "description": "indicates if this folder holds Projects or Templates"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the folder was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the folder was last modified"
    }
  },
  "required": [
    "id",
    "title",
    "owner_id",
    "group_id",
    "parent_folder_id",
    "hidden",
    "content_type",
    "creation_date",
    "version_date"
  ]
}

Templates

Templates Resource

Create Template
POST/templates

Create a Template

Example URI

POST /templates
Request  Create Private Template
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Template"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    }
  },
  "required": [
    "title"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /templates/53124
Body
{
  "title": "Luke's Private Template",
  "id": "36280",
  "owner_id": "11038",
  "entry_id": "548613",
  "group_id": "null",
  "folder_id": "null",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the template"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the template owner"
    },
    "entry_id": {
      "type": "string",
      "description": "the stable id of the entry which is stored inside the template"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the template is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the template is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the template is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the template was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the template was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "entry_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ]
}
Request  Create Private Template in a Folder
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Template",
  "folder_id": "36282"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "folder_id": {
      "type": "string",
      "description": "the id of the folder in which the template is stored"
    }
  },
  "required": [
    "title",
    "folder_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /templates/53124
Body
{
  "title": "Luke's Private Template",
  "id": "36280",
  "owner_id": "11038",
  "entry_id": "548613",
  "group_id": "null",
  "folder_id": "36281",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the template"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the template owner"
    },
    "entry_id": {
      "type": "string",
      "description": "the stable id of the entry which is stored inside the template"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the template is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the template is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the template is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the template was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the template was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "entry_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ],
  "additionalProperties": false
}
Request  Create Group Template
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Template",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "group_id": {
      "type": "string",
      "description": "the id of the group to which the template is associated"
    }
  },
  "required": [
    "title",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /templates/53124
Body
{
  "title": "Luke's Private Template",
  "id": "36280",
  "owner_id": "11038",
  "entry_id": "548613",
  "group_id": "1200",
  "folder_id": "null",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the template"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the template owner"
    },
    "entry_id": {
      "type": "string",
      "description": "the stable id of the entry which is stored inside the template"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the template is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the template is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the template is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the template was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the template was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "entry_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ],
  "additionalProperties": false
}
Request  Create Group Template in a Folder
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Template",
  "folder_id": "36281",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "folder_id": {
      "type": "string",
      "description": "the id of the folder in which the template is stored"
    },
    "group_id": {
      "type": "string",
      "description": "the id of the group to which the template is associated"
    }
  },
  "required": [
    "title",
    "folder_id",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /templates/53124
Body
{
  "title": "Luke's Private Template",
  "id": "36280",
  "owner_id": "11038",
  "entry_id": "548613",
  "group_id": "1200",
  "folder_id": "36281",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the template"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the template owner"
    },
    "entry_id": {
      "type": "string",
      "description": "the stable id of the entry which is stored inside the template"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the template is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the template is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the template is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the template was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the template was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "entry_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ],
  "additionalProperties": false
}
Request  Create Template from an Existing Entry
HideShow

Creates a new template using the source entry identified in the Source-Id header. Note that the templates target group must be the same group as that of the source entry. Further, you must have read access to the source entry.

Headers
Content-Type: application/json
Source-Id: 938304
Body
{
  "title": "Luke's Private Template",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "group_id": {
      "type": "string",
      "description": "The id of the group to which the template is associated. This has to be the same group ID as the one of the source entry"
    }
  },
  "required": [
    "title",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /templates/53124
Body
{
  "title": "Luke's Private Template",
  "id": "36280",
  "owner_id": "11038",
  "entry_id": "548613",
  "group_id": "1200",
  "folder_id": "null",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the template"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the template owner"
    },
    "entry_id": {
      "type": "string",
      "description": "the stable id of the entry which is stored inside the template"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the template is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the template is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the template is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the template was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the template was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "entry_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ],
  "additionalProperties": false
}

Get Template
GET/templates/{id}{?expand}

Returns the latest version of a template

Example URI

GET /templates/36280?expand=
URI Parameters
HideShow
id
string (required) Example: 36280

id of the template

expand
string (optional) 

A comma separated list of related domain objects that should be expanded for the template returned

Choices: entry owner

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "title": "Luke's Private Template",
  "id": "36280",
  "owner_id": "11038",
  "entry_id": "548613",
  "group_id": "null",
  "folder_id": "null",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the template"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the template owner"
    },
    "entry_id": {
      "type": "string",
      "description": "the stable id of the entry which is stored inside the template"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the template is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the template is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the template is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the template was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the template was last modified"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "entry_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date"
  ],
  "additionalProperties": false
}
Request  ?expand=entry
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "title": "Luke's Private Template",
  "id": "36280",
  "owner_id": "11038",
  "entry_id": "548613",
  "group_id": "null",
  "folder_id": "null",
  "hidden": false,
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "entry": {
    "id": "548613",
    "version_id": "5309878",
    "author_id": "11038",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version_date": "2017-02-15T12:34:56.789+0200",
    "element_layout": {
      "rows": [
        {
          "cells": [
            {
              "element_version_id": "2309983",
              "width": 60
            }
          ]
        }
      ]
    },
    "elements": [
      {
        "id": "e79cfbb5d2cb5a39b7a821a3ae0476e6605adcc2",
        "version_id": "2309983",
        "type": "TEXT"
      }
    ],
    "tags": [
      "luke",
      "star wars"
    ],
    "custom_dates": [
      {
        "name": "validation date",
        "value": "2017-12-25"
      }
    ],
    "template_id": "36280"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display name of the template"
    },
    "id": {
      "type": "string",
      "description": "the unique id of the template"
    },
    "owner_id": {
      "type": "string",
      "description": "the id of the template owner"
    },
    "entry_id": {
      "type": "string",
      "description": "the stable id of the entry which is stored inside the template"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the template is associated"
    },
    "folder_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the folder in which the template is stored"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicating if the template is hidden"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the template was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the template was last modified"
    },
    "entry": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "the unique id of the entry"
        },
        "version_id": {
          "type": "string",
          "description": "the unique id of the entry"
        },
        "author_id": {
          "type": "string",
          "description": "the unique id of the user created the entry"
        },
        "creation_date": {
          "type": "string",
          "description": "date when the entry was created"
        },
        "version_date": {
          "type": "string",
          "description": "date when this entry was last modified"
        },
        "element_layout": {
          "type": "object",
          "properties": {
            "rows": {
              "type": [
                "array",
                "null"
              ],
              "description": "the notebook row/column layout of elements in the entry"
            }
          },
          "required": [
            "rows"
          ],
          "description": "The layout of the elements in this entry"
        },
        "elements": {
          "type": "array",
          "description": "The elements in this entry"
        },
        "tags": {
          "type": "array",
          "description": "The tags for this entry. Tags are case insensitive."
        },
        "custom_dates": {
          "type": "array",
          "description": "Custom dates for this entry"
        },
        "template_id": {
          "type": "string",
          "description": "template location of the entry"
        }
      },
      "required": [
        "id",
        "version_id",
        "author_id",
        "creation_date",
        "version_date",
        "element_layout",
        "elements",
        "tags",
        "custom_dates",
        "template_id"
      ],
      "description": "the entry referenced by the `entry_id` property"
    }
  },
  "required": [
    "title",
    "id",
    "owner_id",
    "entry_id",
    "group_id",
    "folder_id",
    "hidden",
    "creation_date",
    "version_date",
    "entry"
  ],
  "additionalProperties": false
}

Notebook

Entries

List Entries
GET/entries{?sort,omit_empty_title,title,expand,limit,offset}

Returns the list of entries

Example URI

GET /entries?sort=&omit_empty_title=&title=&expand=&limit=&offset=
URI Parameters
HideShow
sort
string (optional) 

Field to sort the results by. When omitted results are sorted by user application settings

Choices: title -title

omit_empty_title
boolean (optional) Default: false 

omit entries without a title in the result set

title
string (optional) 

partial string to match the entry title

limit
number (optional) Default: 20 

Maximum number of projects to return. The maximum for limit is 50 items.

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

expand
string (optional) 

A comma separated list of related domain objects that should be expanded for all items returned.

Choices: author project

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
X-Total-Count: 1
X-Limit: 20
X-Offset: 0
Body
[
  {
    "id": "2309878",
    "version_id": "5309878",
    "author_id": "11038",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version_date": "2017-02-15T12:34:56.789+0200",
    "element_layout": {
      "rows": [
        {
          "cells": [
            {
              "element_version_id": "2309983",
              "width": 60
            }
          ]
        }
      ]
    },
    "elements": [
      {
        "id": "e79cfbb5d2cb5a39b7a821a3ae0476e6605adcc2",
        "version_id": "2309983",
        "type": "TEXT"
      }
    ],
    "tags": [
      "luke",
      "star wars"
    ],
    "custom_dates": [
      {
        "name": "validation date",
        "value": "2017-12-25"
      }
    ],
    "project_id": "36272",
    "title": "Luke's Private Entry",
    "entry_number": 1,
    "hidden": false,
    "editable": true
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "the stable pointer to the most current version `blockId`"
      },
      "version_id": {
        "type": "string",
        "description": "the unique id of the entry"
      },
      "author_id": {
        "type": "string",
        "description": "the unique id of the user created the entry"
      },
      "creation_date": {
        "type": "string",
        "description": "date when the entry was created"
      },
      "version_date": {
        "type": "string",
        "description": "date when this entry was last modified"
      },
      "element_layout": {
        "type": "object",
        "properties": {
          "rows": {
            "type": [
              "array",
              "null"
            ],
            "description": "the notebook row/column layout of elements in the entry"
          }
        },
        "required": [
          "rows"
        ],
        "description": "The layout of the elements in this entry"
      },
      "elements": {
        "type": "array",
        "description": "The elements in this entry"
      },
      "tags": {
        "type": "array",
        "description": "The tags for this entry. Tags are case insensitive."
      },
      "custom_dates": {
        "type": "array",
        "description": "Custom dates for this entry"
      },
      "project_id": {
        "type": "string",
        "description": "project location of the entry"
      },
      "title": {
        "type": "string",
        "description": "the display name of the entry"
      },
      "entry_number": {
        "type": "number",
        "description": "position of the entry inside the project"
      },
      "hidden": {
        "type": "boolean",
        "description": "indicates if the entry is hidden or visible"
      },
      "editable": {
        "type": "boolean",
        "description": "Indicates if the requesting user has write access to the entry. An entry is editable if the user is the entry author while the entry is neither signed nor hidden."
      }
    },
    "required": [
      "id",
      "version_id",
      "author_id",
      "creation_date",
      "version_date",
      "element_layout",
      "elements",
      "tags",
      "custom_dates",
      "project_id",
      "title",
      "entry_number",
      "hidden",
      "editable"
    ]
  }
}

Create Notebook Entry
POST/entries

Create a notebook entry

Example URI

POST /entries
Request  Create Entry with Title
HideShow
Headers
Content-Type: application/json
Body
{
  "project_id": "36272",
  "title": "Luke's Private Entry"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    }
  },
  "required": [
    "project_id",
    "title"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /entries/10945
Body
{
  "id": "2309878",
  "version_id": "5309878",
  "author_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "element_layout": {
    "rows": []
  },
  "elements": [],
  "tags": [],
  "custom_dates": [],
  "project_id": "36272",
  "title": "Luke's Private Entry",
  "entry_number": 1,
  "hidden": false,
  "editable": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the stable pointer to the most current version `blockId`"
    },
    "version_id": {
      "type": "string",
      "description": "the unique id of the entry"
    },
    "author_id": {
      "type": "string",
      "description": "the unique id of the user created the entry"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the entry was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when this entry was last modified"
    },
    "element_layout": {
      "type": "object",
      "properties": {
        "rows": {
          "type": "array",
          "description": "the notebook row/column layout of elements in the entry"
        }
      },
      "description": "The layout of the elements in this entry"
    },
    "elements": {
      "type": "array",
      "description": "The elements in this entry"
    },
    "tags": {
      "type": "array",
      "description": "The tags for this entry. Tags are case insensitive."
    },
    "custom_dates": {
      "type": "array",
      "description": "Custom dates for this entry"
    },
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    },
    "entry_number": {
      "type": "number",
      "description": "position of the entry inside the project"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicates if the entry is hidden or visible"
    },
    "editable": {
      "type": "boolean",
      "description": "Indicates if the requesting user has write access to the entry. An entry is editable if the user is the entry author while the entry is neither signed nor hidden."
    }
  },
  "required": [
    "id",
    "version_id",
    "author_id",
    "creation_date",
    "version_date",
    "element_layout",
    "elements",
    "tags",
    "custom_dates",
    "project_id",
    "title",
    "entry_number",
    "hidden",
    "editable"
  ],
  "additionalProperties": false
}
Request  Create Entry with Tags
HideShow
Headers
Content-Type: application/json
Body
{
  "project_id": "36272",
  "title": "Luke's Private Entry",
  "tags": [
    "luke",
    "star wars"
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    },
    "tags": {
      "type": "array",
      "description": "array of strings representing tags"
    }
  },
  "required": [
    "project_id",
    "title",
    "tags"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /entries/10945
Body
{
  "id": "2309878",
  "version_id": "5309878",
  "author_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "element_layout": {
    "rows": []
  },
  "elements": [],
  "tags": [
    "luke",
    "star wars"
  ],
  "custom_dates": [],
  "project_id": "36272",
  "title": "Luke's Private Entry",
  "entry_number": 1,
  "hidden": false,
  "editable": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the stable pointer to the most current version `blockId`"
    },
    "version_id": {
      "type": "string",
      "description": "the unique id of the entry"
    },
    "author_id": {
      "type": "string",
      "description": "the unique id of the user created the entry"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the entry was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when this entry was last modified"
    },
    "element_layout": {
      "type": "object",
      "properties": {
        "rows": {
          "type": "array",
          "description": "the notebook row/column layout of elements in the entry"
        }
      },
      "description": "The layout of the elements in this entry"
    },
    "elements": {
      "type": "array",
      "description": "The elements in this entry"
    },
    "tags": {
      "type": "array",
      "description": "The tags for this entry. Tags are case insensitive."
    },
    "custom_dates": {
      "type": "array",
      "description": "Custom dates for this entry"
    },
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    },
    "entry_number": {
      "type": "number",
      "description": "position of the entry inside the project"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicates if the entry is hidden or visible"
    },
    "editable": {
      "type": "boolean",
      "description": "Indicates if the requesting user has write access to the entry. An entry is editable if the user is the entry author while the entry is neither signed nor hidden."
    }
  },
  "required": [
    "id",
    "version_id",
    "author_id",
    "creation_date",
    "version_date",
    "element_layout",
    "elements",
    "tags",
    "custom_dates",
    "project_id",
    "title",
    "entry_number",
    "hidden",
    "editable"
  ],
  "additionalProperties": false
}
Request  Create Entry with Custom Dates
HideShow
Headers
Content-Type: application/json
Body
{
  "project_id": "36272",
  "title": "Luke's Private Entry",
  "custom_dates": [
    {
      "name": "validation date",
      "value": "2017-12-25"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    },
    "custom_dates": {
      "type": "array",
      "description": "array of custom dates"
    }
  },
  "required": [
    "project_id",
    "title",
    "custom_dates"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /entries/10945
Body
{
  "id": "2309878",
  "version_id": "5309878",
  "author_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "element_layout": {
    "rows": []
  },
  "elements": [],
  "tags": [],
  "custom_dates": [
    {
      "name": "validation date",
      "value": "2017-12-25"
    }
  ],
  "project_id": "36272",
  "title": "Luke's Private Entry",
  "entry_number": 1,
  "hidden": false,
  "editable": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the stable pointer to the most current version `blockId`"
    },
    "version_id": {
      "type": "string",
      "description": "the unique id of the entry"
    },
    "author_id": {
      "type": "string",
      "description": "the unique id of the user created the entry"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the entry was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when this entry was last modified"
    },
    "element_layout": {
      "type": "object",
      "properties": {
        "rows": {
          "type": "array",
          "description": "the notebook row/column layout of elements in the entry"
        }
      },
      "description": "The layout of the elements in this entry"
    },
    "elements": {
      "type": "array",
      "description": "The elements in this entry"
    },
    "tags": {
      "type": "array",
      "description": "The tags for this entry. Tags are case insensitive."
    },
    "custom_dates": {
      "type": "array",
      "description": "Custom dates for this entry"
    },
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    },
    "entry_number": {
      "type": "number",
      "description": "position of the entry inside the project"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicates if the entry is hidden or visible"
    },
    "editable": {
      "type": "boolean",
      "description": "Indicates if the requesting user has write access to the entry. An entry is editable if the user is the entry author while the entry is neither signed nor hidden."
    }
  },
  "required": [
    "id",
    "version_id",
    "author_id",
    "creation_date",
    "version_date",
    "element_layout",
    "elements",
    "tags",
    "custom_dates",
    "project_id",
    "title",
    "entry_number",
    "hidden",
    "editable"
  ],
  "additionalProperties": false
}
Request  Create Entry from an Existing Entry or Template
HideShow

Creates a new entry in the target project using the notebook entry or template entry identified by the Source-Id header. Providing the Source-Id header causes all additional fields, other than project_id, to be omitted for the creation. Note that the target project must exist within the same group as that of the source notebook entry or template entry.

Headers
Content-Type: application/json
Source-Id: 938302
Body
{
  "project_id": "36272"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    }
  },
  "required": [
    "project_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /entries/10945
Body
{
  "id": "2309878",
  "version_id": "5309878",
  "author_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "element_layout": {
    "rows": []
  },
  "elements": [],
  "tags": [],
  "custom_dates": [],
  "project_id": "36272",
  "title": "Luke's Private Entry",
  "entry_number": 1,
  "hidden": false,
  "editable": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the stable pointer to the most current version `blockId`"
    },
    "version_id": {
      "type": "string",
      "description": "the unique id of the entry"
    },
    "author_id": {
      "type": "string",
      "description": "the unique id of the user created the entry"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the entry was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when this entry was last modified"
    },
    "element_layout": {
      "type": "object",
      "properties": {
        "rows": {
          "type": "array",
          "description": "the notebook row/column layout of elements in the entry"
        }
      },
      "description": "The layout of the elements in this entry"
    },
    "elements": {
      "type": "array",
      "description": "The elements in this entry"
    },
    "tags": {
      "type": "array",
      "description": "The tags for this entry. Tags are case insensitive."
    },
    "custom_dates": {
      "type": "array",
      "description": "Custom dates for this entry"
    },
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    },
    "entry_number": {
      "type": "number",
      "description": "position of the entry inside the project"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicates if the entry is hidden or visible"
    },
    "editable": {
      "type": "boolean",
      "description": "Indicates if the requesting user has write access to the entry. An entry is editable if the user is the entry author while the entry is neither signed nor hidden."
    }
  },
  "required": [
    "id",
    "version_id",
    "author_id",
    "creation_date",
    "version_date",
    "element_layout",
    "elements",
    "tags",
    "custom_dates",
    "project_id",
    "title",
    "entry_number",
    "hidden",
    "editable"
  ],
  "additionalProperties": false
}

Update Entry
PATCH/entries/{id}

Update an entry’s attributes. The supported operations will grow in time. This endpoint complies with RFC 6902, the specification for JSON Patch.

Example URI

PATCH /entries/938306
URI Parameters
HideShow
id
string (required) Example: 938306

the unique id of the entry

Request  Change the Project of an Entry
HideShow

Note: the Project must exist in the same workspace as the entry for the operation to be successful.

Headers
Content-Type: application/json-patch+json
Body
[
  {
    "op": "replace",
    "path": "/project_id",
    "value": "36272"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "op": {
        "type": "string",
        "enum": [
          "replace"
        ],
        "description": "The replace operation defined by RFC 6902"
      },
      "path": {
        "type": "string",
        "enum": [
          "/project_id"
        ],
        "description": "JSON Pointer notation to the member named project id"
      },
      "value": {
        "type": "string",
        "enum": [
          "36272"
        ],
        "description": "the id of the project, in which the entry should move"
      }
    },
    "required": [
      "op",
      "path",
      "value"
    ]
  }
}
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "id": "2309878",
  "version_id": "5309878",
  "author_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "element_layout": {
    "rows": [
      {
        "cells": [
          {
            "element_version_id": "2309983",
            "width": 60
          }
        ]
      }
    ]
  },
  "elements": [
    {
      "id": "e79cfbb5d2cb5a39b7a821a3ae0476e6605adcc2",
      "version_id": "2309983",
      "type": "TEXT"
    }
  ],
  "tags": [
    "luke",
    "star wars"
  ],
  "custom_dates": [
    {
      "name": "validation date",
      "value": "2017-12-25"
    }
  ],
  "project_id": "36272",
  "title": "Luke's Private Entry",
  "entry_number": 1,
  "hidden": false,
  "editable": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the stable pointer to the most current version `blockId`"
    },
    "version_id": {
      "type": "string",
      "description": "the unique id of the entry"
    },
    "author_id": {
      "type": "string",
      "description": "the unique id of the user created the entry"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the entry was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when this entry was last modified"
    },
    "element_layout": {
      "type": "object",
      "properties": {
        "rows": {
          "type": [
            "array",
            "null"
          ],
          "description": "the notebook row/column layout of elements in the entry"
        }
      },
      "required": [
        "rows"
      ],
      "description": "The layout of the elements in this entry"
    },
    "elements": {
      "type": "array",
      "description": "The elements in this entry"
    },
    "tags": {
      "type": "array",
      "description": "The tags for this entry. Tags are case insensitive."
    },
    "custom_dates": {
      "type": "array",
      "description": "Custom dates for this entry"
    },
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    },
    "entry_number": {
      "type": "number",
      "description": "position of the entry inside the project"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicates if the entry is hidden or visible"
    },
    "editable": {
      "type": "boolean",
      "description": "Indicates if the requesting user has write access to the entry. An entry is editable if the user is the entry author while the entry is neither signed nor hidden."
    }
  },
  "required": [
    "id",
    "version_id",
    "author_id",
    "creation_date",
    "version_date",
    "element_layout",
    "elements",
    "tags",
    "custom_dates",
    "project_id",
    "title",
    "entry_number",
    "hidden",
    "editable"
  ],
  "additionalProperties": false
}
Request  Change the visibility of an Entry
HideShow
Headers
Content-Type: application/json-patch+json
Body
[
  {
    "op": "replace",
    "path": "/hidden",
    "value": true
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "op": {
        "type": "string",
        "enum": [
          "replace"
        ],
        "description": "The replace operation defined by RFC 6902"
      },
      "path": {
        "type": "string",
        "enum": [
          "/hidden"
        ],
        "description": "JSON Pointer notation to the member named hidden"
      },
      "value": {
        "type": "boolean",
        "description": "true to hide the entry, false to make the entry visible"
      }
    },
    "required": [
      "op",
      "path",
      "value"
    ]
  }
}
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "id": "938306",
  "version_id": "5309878",
  "author_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "element_layout": {
    "rows": [
      {
        "cells": [
          {
            "element_version_id": "2309983",
            "width": 60
          }
        ]
      }
    ]
  },
  "elements": [
    {
      "id": "e79cfbb5d2cb5a39b7a821a3ae0476e6605adcc2",
      "version_id": "2309983",
      "type": "TEXT"
    }
  ],
  "tags": [
    "luke",
    "star wars"
  ],
  "custom_dates": [
    {
      "name": "validation date",
      "value": "2017-12-25"
    }
  ],
  "project_id": "36272",
  "title": "Luke's Private Entry",
  "entry_number": 1,
  "hidden": true,
  "editable": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the stable pointer to the most current version `blockId`"
    },
    "version_id": {
      "type": "string",
      "description": "the unique id of the entry"
    },
    "author_id": {
      "type": "string",
      "description": "the unique id of the user created the entry"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the entry was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when this entry was last modified"
    },
    "element_layout": {
      "type": "object",
      "properties": {
        "rows": {
          "type": [
            "array",
            "null"
          ],
          "description": "the notebook row/column layout of elements in the entry"
        }
      },
      "required": [
        "rows"
      ],
      "description": "The layout of the elements in this entry"
    },
    "elements": {
      "type": "array",
      "description": "The elements in this entry"
    },
    "tags": {
      "type": "array",
      "description": "The tags for this entry. Tags are case insensitive."
    },
    "custom_dates": {
      "type": "array",
      "description": "Custom dates for this entry"
    },
    "project_id": {
      "type": "string",
      "description": "project location of the entry"
    },
    "title": {
      "type": "string",
      "description": "the display name of the entry"
    },
    "entry_number": {
      "type": "number",
      "description": "position of the entry inside the project"
    },
    "hidden": {
      "type": "boolean",
      "description": "indicates if the entry is hidden or visible"
    },
    "editable": {
      "type": "boolean",
      "description": "Indicates if the requesting user has write access to the entry. An entry is editable if the user is the entry author while the entry is neither signed nor hidden."
    }
  },
  "required": [
    "id",
    "version_id",
    "author_id",
    "creation_date",
    "version_date",
    "element_layout",
    "elements",
    "tags",
    "custom_dates",
    "project_id",
    "title",
    "entry_number",
    "hidden",
    "editable"
  ],
  "additionalProperties": false
}

Export

Exports Resource

List All Exports
GET/exports{?status,limit,offset}

Get a list of Exports of all kinds that the requesting user has created. The list is ordered by creation date descending.

Example URI

GET /exports?status=FINISHED&limit=&offset=
URI Parameters
HideShow
status
string (optional) Example: FINISHED

A comma separated list of statuses to be filtered.

Choices: NEW RUNNING FINISHED REMOVED ERROR QUEUED

limit
number (optional) Default: 20 

Maximum number of exports to return. The maximum for limit is 50 items.

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
X-Total-Count: 1
X-Limit: 20
X-Offset: 0
Body
[
  {
    "id": "20e699a3-4764-461f-a4bc-d10d7cbba3f0",
    "user_id": "11038",
    "type": "XHTML",
    "content": {
      "project_ids": [
        "36272"
      ],
      "entry_ids": [],
      "template_ids": [],
      "group_ids": []
    },
    "status": "FINISHED",
    "completion_date": "2019-02-01T13:35:30.789+0200",
    "download_file_length": 12345,
    "creation_date": "2019-02-01T13:34:56.789+0200",
    "version_date": "2019-02-01T13:35:30.789+0200",
    "download_filename": "my_labfolder_content.zip",
    "download_href": "https://eln.labfolder.com/api/v2/exports/xhtml/20e699a3-4764-461f-a4bc-d10d7cbba3f0?X-Labfolder-Signature=2ff8f6e9044138adb49e4a3c0674b5b4992c8c51aa907f605ecf5da85833d020&X-Labfolder-Expires=1554974215285"
  },
  {
    "id": "20e699a3-4764-461f-a4bc-d10d7cbba3f0",
    "user_id": "11038",
    "type": "PDF",
    "content": {
      "project_ids": [
        "36272"
      ],
      "entry_ids": [],
      "template_ids": [],
      "group_ids": []
    },
    "status": "FINISHED",
    "completion_date": "2019-02-01T13:35:30.789+0200",
    "download_file_length": 12345,
    "creation_date": "2019-02-01T13:34:56.789+0200",
    "version_date": "2019-02-01T13:35:30.789+0200",
    "download_filename": "example_project.pdf",
    "download_href": "https://eln.labfolder.com/api/v2/exports/pdf/20e699a3-4764-461f-a4bc-d10d7cbba3f0?X-Labfolder-Signature=2ff8f6e9044138adb49e4a3c0674b5b4992c8c51aa907f605ecf5da85833d020&X-Labfolder-Expires=1554974215285",
    "settings": {
      "include_page_header": true,
      "include_page_footer": true,
      "include_page_number": true,
      "include_entry_header": true,
      "include_entry_footer": true,
      "include_entry_dates": true,
      "include_tags": true
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": [
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "the unique id of the export"
        },
        "user_id": {
          "type": "string",
          "description": "the unique id of the user, who created the export"
        },
        "type": {
          "type": "string",
          "enum": [
            "XHTML"
          ],
          "description": "the type of export"
        },
        "content": {
          "type": "object",
          "properties": {
            "project_ids": {
              "type": "array",
              "description": "the ids of projects that are contained in the export"
            },
            "entry_ids": {
              "type": "array",
              "description": "the ids of entries that are contained in the export"
            },
            "template_ids": {
              "type": "array",
              "description": "the ids of templates that are contained in the export"
            },
            "group_ids": {
              "type": "array",
              "description": "the ids of complete groups that are contained in the export"
            }
          },
          "required": [
            "project_ids",
            "entry_ids",
            "template_ids",
            "group_ids"
          ],
          "additionalProperties": false,
          "description": "object defining the export content scope"
        },
        "status": {
          "type": "string",
          "enum": [
            "NEW",
            "RUNNING",
            "FINISHED",
            "REMOVED",
            "ERROR",
            "QUEUED",
            "ABORT_PARALLEL"
          ],
          "description": "the status of the export in the export life cycle"
        },
        "completion_date": {
          "type": [
            "string",
            "null"
          ],
          "description": "date when the export file creation was completed"
        },
        "download_file_length": {
          "type": "number",
          "description": "the export download file content size in bytes"
        },
        "creation_date": {
          "type": "string",
          "description": "date when the export was created"
        },
        "version_date": {
          "type": "string",
          "description": "date when the export was last modified"
        },
        "download_filename": {
          "type": "string",
          "description": "the filename used for the finished export downloadable file"
        },
        "download_href": {
          "type": [
            "string",
            "null"
          ],
          "description": "entity specific pre-signed download URL, that is valid until the date (in milliseconds) from the X-Labfolder-Expires parameter"
        }
      },
      "required": [
        "id",
        "user_id",
        "type",
        "content",
        "status",
        "completion_date",
        "download_file_length",
        "creation_date",
        "version_date",
        "download_filename"
      ]
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "the unique id of the export"
        },
        "user_id": {
          "type": "string",
          "description": "the unique id of the user, who created the export"
        },
        "type": {
          "type": "string",
          "enum": [
            "PDF"
          ],
          "description": "the type of export"
        },
        "content": {
          "type": "object",
          "properties": {
            "project_ids": {
              "type": "array",
              "description": "the ids of projects that are contained in the export"
            },
            "entry_ids": {
              "type": "array",
              "description": "the ids of entries that are contained in the export"
            },
            "template_ids": {
              "type": "array",
              "description": "the ids of templates that are contained in the export"
            },
            "group_ids": {
              "type": "array",
              "description": "the ids of complete groups that are contained in the export"
            }
          },
          "required": [
            "project_ids",
            "entry_ids",
            "template_ids",
            "group_ids"
          ],
          "additionalProperties": false,
          "description": "object defining the export content scope"
        },
        "status": {
          "type": "string",
          "enum": [
            "NEW",
            "RUNNING",
            "FINISHED",
            "REMOVED",
            "ERROR",
            "QUEUED",
            "ABORT_PARALLEL"
          ],
          "description": "the status of the export in the export life cycle"
        },
        "completion_date": {
          "type": [
            "string",
            "null"
          ],
          "description": "date when the export file creation was completed"
        },
        "download_file_length": {
          "type": "number",
          "description": "the export download file content size in bytes"
        },
        "creation_date": {
          "type": "string",
          "description": "date when the export was created"
        },
        "version_date": {
          "type": "string",
          "description": "date when the export was last modified"
        },
        "download_filename": {
          "type": "string",
          "description": "the filename used for the finished export downloadable file"
        },
        "download_href": {
          "type": [
            "string",
            "null"
          ],
          "description": "entity specific pre-signed download URL, that is valid until the date (in milliseconds) from the X-Labfolder-Expires parameter"
        },
        "settings": {
          "type": "object",
          "properties": {
            "include_page_header": {
              "type": "boolean",
              "description": "defines if PDF contains page headers",
              "default": true
            },
            "include_page_footer": {
              "type": "boolean",
              "description": "defines if PDF contains page footer",
              "default": true
            },
            "include_page_number": {
              "type": "boolean",
              "description": "defines if PDF contains page numbers",
              "default": true
            },
            "include_entry_header": {
              "type": "boolean",
              "description": "defines if entries in the PDF contain an entry headers",
              "default": true
            },
            "include_entry_footer": {
              "type": "boolean",
              "description": "defines if entries in the PDF contain an entry footers",
              "default": true
            },
            "include_entry_dates": {
              "type": "boolean",
              "description": "defines if entries in the PDF contain entry dates",
              "default": true
            },
            "include_tags": {
              "type": "boolean",
              "description": "defines if entries in the PDF contain entry tags",
              "default": true
            }
          },
          "required": [
            "include_page_header",
            "include_page_footer",
            "include_page_number",
            "include_entry_header",
            "include_entry_footer",
            "include_entry_dates",
            "include_tags"
          ]
        }
      },
      "required": [
        "id",
        "user_id",
        "type",
        "content",
        "status",
        "completion_date",
        "download_file_length",
        "creation_date",
        "version_date",
        "download_filename",
        "settings"
      ]
    }
  ]
}

PDF Exports

List PDF Exports
GET/exports/pdf{?status,limit,offset}

Get all created PDF Exports the requesting user has created

Example URI

GET /exports/pdf?status=FINISHED&limit=&offset=
URI Parameters
HideShow
status
string (optional) Example: FINISHED

A comma separated list of statuses to be filtered.

Choices: NEW RUNNING FINISHED REMOVED ERROR QUEUED

limit
number (optional) Default: 20 

Maximum number of exports to return. The maximum for limit is 50 items.

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
X-Total-Count: 1
X-Limit: 20
X-Offset: 0
Body
[
  {
    "id": "20e699a3-4764-461f-a4bc-d10d7cbba3f0",
    "user_id": "11038",
    "type": "PDF",
    "content": {
      "project_ids": [
        "36272"
      ],
      "entry_ids": [],
      "template_ids": [],
      "group_ids": []
    },
    "status": "FINISHED",
    "completion_date": "2019-02-01T13:35:30.789+0200",
    "download_file_length": 12345,
    "creation_date": "2019-02-01T13:34:56.789+0200",
    "version_date": "2019-02-01T13:35:30.789+0200",
    "download_filename": "example_project.pdf",
    "download_href": "https://eln.labfolder.com/api/v2/exports/pdf/20e699a3-4764-461f-a4bc-d10d7cbba3f0?X-Labfolder-Signature=2ff8f6e9044138adb49e4a3c0674b5b4992c8c51aa907f605ecf5da85833d020&X-Labfolder-Expires=1554974215285",
    "settings": {
      "include_page_header": true,
      "include_page_footer": true,
      "include_page_number": true,
      "include_entry_header": true,
      "include_entry_footer": true,
      "include_entry_dates": true,
      "include_tags": true
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "the unique id of the export"
      },
      "user_id": {
        "type": "string",
        "description": "the unique id of the user, who created the export"
      },
      "type": {
        "type": "string",
        "enum": [
          "PDF"
        ],
        "description": "the type of export"
      },
      "content": {
        "type": "object",
        "properties": {
          "project_ids": {
            "type": "array",
            "description": "the ids of projects that are contained in the export"
          },
          "entry_ids": {
            "type": "array",
            "description": "the ids of entries that are contained in the export"
          },
          "template_ids": {
            "type": "array",
            "description": "the ids of templates that are contained in the export"
          },
          "group_ids": {
            "type": "array",
            "description": "the ids of complete groups that are contained in the export"
          }
        },
        "required": [
          "project_ids",
          "entry_ids",
          "template_ids",
          "group_ids"
        ],
        "additionalProperties": false,
        "description": "object defining the export content scope"
      },
      "status": {
        "type": "string",
        "enum": [
          "NEW",
          "RUNNING",
          "FINISHED",
          "REMOVED",
          "ERROR",
          "QUEUED",
          "ABORT_PARALLEL"
        ],
        "description": "the status of the export in the export life cycle"
      },
      "completion_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "date when the export file creation was completed"
      },
      "download_file_length": {
        "type": "number",
        "description": "the export download file content size in bytes"
      },
      "creation_date": {
        "type": "string",
        "description": "date when the export was created"
      },
      "version_date": {
        "type": "string",
        "description": "date when the export was last modified"
      },
      "download_filename": {
        "type": "string",
        "description": "the filename used for the finished export downloadable file"
      },
      "download_href": {
        "type": [
          "string",
          "null"
        ],
        "description": "entity specific pre-signed download URL, that is valid until the date (in milliseconds) from the X-Labfolder-Expires parameter"
      },
      "settings": {
        "type": "object",
        "properties": {
          "include_page_header": {
            "type": "boolean",
            "description": "defines if PDF contains page headers",
            "default": true
          },
          "include_page_footer": {
            "type": "boolean",
            "description": "defines if PDF contains page footer",
            "default": true
          },
          "include_page_number": {
            "type": "boolean",
            "description": "defines if PDF contains page numbers",
            "default": true
          },
          "include_entry_header": {
            "type": "boolean",
            "description": "defines if entries in the PDF contain an entry headers",
            "default": true
          },
          "include_entry_footer": {
            "type": "boolean",
            "description": "defines if entries in the PDF contain an entry footers",
            "default": true
          },
          "include_entry_dates": {
            "type": "boolean",
            "description": "defines if entries in the PDF contain entry dates",
            "default": true
          },
          "include_tags": {
            "type": "boolean",
            "description": "defines if entries in the PDF contain entry tags",
            "default": true
          }
        },
        "required": [
          "include_page_header",
          "include_page_footer",
          "include_page_number",
          "include_entry_header",
          "include_entry_footer",
          "include_entry_dates",
          "include_tags"
        ]
      }
    },
    "required": [
      "id",
      "user_id",
      "type",
      "content",
      "status",
      "completion_date",
      "download_file_length",
      "creation_date",
      "version_date",
      "download_filename",
      "settings"
    ]
  }
}

Get PDF Export
GET/exports/pdf/{id}

Returns the current version of the PDF export.

Example URI

GET /exports/pdf/ced8ca60-660b-4916-96a7-76b3258db135
URI Parameters
HideShow
id
string (required) Example: ced8ca60-660b-4916-96a7-76b3258db135

id of the PDF export

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "id": "20e699a3-4764-461f-a4bc-d10d7cbba3f0",
  "user_id": "11038",
  "type": "PDF",
  "content": {
    "project_ids": [
      "36272"
    ],
    "entry_ids": [],
    "template_ids": [],
    "group_ids": []
  },
  "status": "FINISHED",
  "completion_date": "2019-02-01T13:35:30.789+0200",
  "download_file_length": 12345,
  "creation_date": "2019-02-01T13:34:56.789+0200",
  "version_date": "2019-02-01T13:35:30.789+0200",
  "download_filename": "example_project.pdf",
  "download_href": "https://eln.labfolder.com/api/v2/exports/pdf/20e699a3-4764-461f-a4bc-d10d7cbba3f0?X-Labfolder-Signature=2ff8f6e9044138adb49e4a3c0674b5b4992c8c51aa907f605ecf5da85833d020&X-Labfolder-Expires=1554974215285",
  "settings": {
    "include_page_header": true,
    "include_page_footer": true,
    "include_page_number": true,
    "include_entry_header": true,
    "include_entry_footer": true,
    "include_entry_dates": true,
    "include_tags": true
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the export"
    },
    "user_id": {
      "type": "string",
      "description": "the unique id of the user, who created the export"
    },
    "type": {
      "type": "string",
      "enum": [
        "PDF"
      ],
      "description": "the type of export"
    },
    "content": {
      "type": "object",
      "properties": {
        "project_ids": {
          "type": "array",
          "description": "the ids of projects that are contained in the export"
        },
        "entry_ids": {
          "type": "array",
          "description": "the ids of entries that are contained in the export"
        },
        "template_ids": {
          "type": "array",
          "description": "the ids of templates that are contained in the export"
        },
        "group_ids": {
          "type": "array",
          "description": "the ids of complete groups that are contained in the export"
        }
      },
      "required": [
        "project_ids",
        "entry_ids",
        "template_ids",
        "group_ids"
      ],
      "additionalProperties": false,
      "description": "object defining the export content scope"
    },
    "status": {
      "type": "string",
      "enum": [
        "NEW",
        "RUNNING",
        "FINISHED",
        "REMOVED",
        "ERROR",
        "QUEUED",
        "ABORT_PARALLEL"
      ],
      "description": "the status of the export in the export life cycle"
    },
    "completion_date": {
      "type": [
        "string",
        "null"
      ],
      "description": "date when the export file creation was completed"
    },
    "download_file_length": {
      "type": "number",
      "description": "the export download file content size in bytes"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the export was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the export was last modified"
    },
    "download_filename": {
      "type": "string",
      "description": "the filename used for the finished export downloadable file"
    },
    "download_href": {
      "type": [
        "string",
        "null"
      ],
      "description": "entity specific pre-signed download URL, that is valid until the date (in milliseconds) from the X-Labfolder-Expires parameter"
    },
    "settings": {
      "type": "object",
      "properties": {
        "include_page_header": {
          "type": "boolean",
          "description": "defines if PDF contains page headers",
          "default": true
        },
        "include_page_footer": {
          "type": "boolean",
          "description": "defines if PDF contains page footer",
          "default": true
        },
        "include_page_number": {
          "type": "boolean",
          "description": "defines if PDF contains page numbers",
          "default": true
        },
        "include_entry_header": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain an entry headers",
          "default": true
        },
        "include_entry_footer": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain an entry footers",
          "default": true
        },
        "include_entry_dates": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain entry dates",
          "default": true
        },
        "include_tags": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain entry tags",
          "default": true
        }
      },
      "required": [
        "include_page_header",
        "include_page_footer",
        "include_page_number",
        "include_entry_header",
        "include_entry_footer",
        "include_entry_dates",
        "include_tags"
      ]
    }
  },
  "required": [
    "id",
    "user_id",
    "type",
    "content",
    "status",
    "completion_date",
    "download_file_length",
    "creation_date",
    "version_date",
    "download_filename",
    "settings"
  ],
  "additionalProperties": false
}

Download PDF Export File
GET/exports/pdf/{id}/download

Download the result file of a finished PDF export.

Example URI

GET /exports/pdf/ced8ca60-660b-4916-96a7-76b3258db135/download
URI Parameters
HideShow
id
string (required) Example: ced8ca60-660b-4916-96a7-76b3258db135

id of the PDF export

Response  200
HideShow
Headers
Content-Type: application/pdf
Content-Disposition: `attachment;filename="labfolder_export.pdf"`
Content-Length: 12345
Body
... file content as binary ...

Create PDF Export
POST/exports/pdf

Create a PDF export of a project, a template, a single entry or all content the requesting user is the owner of.

Only one project ID, template ID, entry ID or group ID is valid to be submitted at a time to create a PDF export. However you can create a full export of all the content you own by simply not specifying any project_ids, template_ids, entry_ids or group_ids in the request.

Example URI

POST /exports/pdf
Request  Create PDF Export
HideShow
Headers
Content-Type: application/json
Body
{
  "download_filename": "example project",
  "settings": {
    "include_page_header": true,
    "include_page_footer": true,
    "include_page_number": true,
    "include_entry_header": true,
    "include_entry_footer": true,
    "include_entry_dates": true,
    "include_tags": true
  },
  "content": {
    "project_ids": [
      "36272"
    ],
    "entry_ids": [
      "Hello, world!"
    ],
    "template_ids": [
      "Hello, world!"
    ],
    "group_ids": [
      "Hello, world!"
    ]
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "download_filename": {
      "type": "string",
      "description": "the filename that should be used for the finished export downloadable file"
    },
    "settings": {
      "type": "object",
      "properties": {
        "include_page_header": {
          "type": "boolean",
          "description": "defines if PDF contains page headers",
          "default": true
        },
        "include_page_footer": {
          "type": "boolean",
          "description": "defines if PDF contains page footer",
          "default": true
        },
        "include_page_number": {
          "type": "boolean",
          "description": "defines if PDF contains page numbers",
          "default": true
        },
        "include_entry_header": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain an entry headers",
          "default": true
        },
        "include_entry_footer": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain an entry footers",
          "default": true
        },
        "include_entry_dates": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain entry dates",
          "default": true
        },
        "include_tags": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain entry tags",
          "default": true
        }
      },
      "description": "json object defining custom settings for export content"
    },
    "content": {
      "type": "object",
      "properties": {
        "project_ids": {
          "type": "array",
          "description": "the ids of projects to be exported"
        },
        "entry_ids": {
          "type": "array",
          "description": "the ids of entries to be exported"
        },
        "template_ids": {
          "type": "array",
          "description": "the ids of templates to be exported"
        },
        "group_ids": {
          "type": "array",
          "description": "the ids of groups to be exported"
        }
      },
      "additionalProperties": false,
      "description": "object defining the export content scope"
    }
  }
}
Response  202
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /exports/pdf/20e699a3-4764-461f-a4bc-d10d7cbba3f0
Body
{
  "id": "20e699a3-4764-461f-a4bc-d10d7cbba3f0",
  "user_id": "11038",
  "type": "PDF",
  "content": {
    "project_ids": [
      "36272"
    ],
    "entry_ids": [],
    "template_ids": [],
    "group_ids": []
  },
  "status": "FINISHED",
  "completion_date": "2019-02-01T13:35:30.789+0200",
  "download_file_length": 12345,
  "creation_date": "2019-02-01T13:34:56.789+0200",
  "version_date": "2019-02-01T13:35:30.789+0200",
  "download_filename": "example_project.pdf",
  "download_href": "https://eln.labfolder.com/api/v2/exports/pdf/20e699a3-4764-461f-a4bc-d10d7cbba3f0?X-Labfolder-Signature=2ff8f6e9044138adb49e4a3c0674b5b4992c8c51aa907f605ecf5da85833d020&X-Labfolder-Expires=1554974215285",
  "settings": {
    "include_page_header": true,
    "include_page_footer": true,
    "include_page_number": true,
    "include_entry_header": true,
    "include_entry_footer": true,
    "include_entry_dates": true,
    "include_tags": true
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the export"
    },
    "user_id": {
      "type": "string",
      "description": "the unique id of the user, who created the export"
    },
    "type": {
      "type": "string",
      "enum": [
        "PDF"
      ],
      "description": "the type of export"
    },
    "content": {
      "type": "object",
      "properties": {
        "project_ids": {
          "type": "array",
          "description": "the ids of projects that are contained in the export"
        },
        "entry_ids": {
          "type": "array",
          "description": "the ids of entries that are contained in the export"
        },
        "template_ids": {
          "type": "array",
          "description": "the ids of templates that are contained in the export"
        },
        "group_ids": {
          "type": "array",
          "description": "the ids of complete groups that are contained in the export"
        }
      },
      "required": [
        "project_ids",
        "entry_ids",
        "template_ids",
        "group_ids"
      ],
      "additionalProperties": false,
      "description": "object defining the export content scope"
    },
    "status": {
      "type": "string",
      "enum": [
        "NEW",
        "RUNNING",
        "FINISHED",
        "REMOVED",
        "ERROR",
        "QUEUED",
        "ABORT_PARALLEL"
      ],
      "description": "the status of the export in the export life cycle"
    },
    "completion_date": {
      "type": [
        "string",
        "null"
      ],
      "description": "date when the export file creation was completed"
    },
    "download_file_length": {
      "type": "number",
      "description": "the export download file content size in bytes"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the export was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the export was last modified"
    },
    "download_filename": {
      "type": "string",
      "description": "the filename used for the finished export downloadable file"
    },
    "download_href": {
      "type": [
        "string",
        "null"
      ],
      "description": "entity specific pre-signed download URL, that is valid until the date (in milliseconds) from the X-Labfolder-Expires parameter"
    },
    "settings": {
      "type": "object",
      "properties": {
        "include_page_header": {
          "type": "boolean",
          "description": "defines if PDF contains page headers",
          "default": true
        },
        "include_page_footer": {
          "type": "boolean",
          "description": "defines if PDF contains page footer",
          "default": true
        },
        "include_page_number": {
          "type": "boolean",
          "description": "defines if PDF contains page numbers",
          "default": true
        },
        "include_entry_header": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain an entry headers",
          "default": true
        },
        "include_entry_footer": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain an entry footers",
          "default": true
        },
        "include_entry_dates": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain entry dates",
          "default": true
        },
        "include_tags": {
          "type": "boolean",
          "description": "defines if entries in the PDF contain entry tags",
          "default": true
        }
      },
      "required": [
        "include_page_header",
        "include_page_footer",
        "include_page_number",
        "include_entry_header",
        "include_entry_footer",
        "include_entry_dates",
        "include_tags"
      ]
    }
  },
  "required": [
    "id",
    "user_id",
    "type",
    "content",
    "status",
    "completion_date",
    "download_file_length",
    "creation_date",
    "version_date",
    "download_filename",
    "settings"
  ],
  "additionalProperties": false
}

XHTML Exports

List XHTML Exports
GET/exports/xhtml{?status,limit,offset}

Get all created XHTML Exports the requesting user has created

Example URI

GET /exports/xhtml?status=FINISHED&limit=&offset=
URI Parameters
HideShow
status
string (optional) Example: FINISHED

A comma separated list of statuses to be filtered.

Choices: NEW RUNNING FINISHED REMOVED ERROR QUEUED

limit
number (optional) Default: 20 

Maximum number of exports to return. The maximum for limit is 50 items.

offset
number (optional) Default: 0 

Offset into result-set (useful for pagination)

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
X-Total-Count: 1
X-Limit: 20
X-Offset: 0
Body
[
  {
    "id": "20e699a3-4764-461f-a4bc-d10d7cbba3f0",
    "user_id": "11038",
    "type": "XHTML",
    "content": {
      "project_ids": [
        "36272"
      ],
      "entry_ids": [],
      "template_ids": [],
      "group_ids": []
    },
    "status": "FINISHED",
    "completion_date": "2019-02-01T13:35:30.789+0200",
    "download_file_length": 12345,
    "creation_date": "2019-02-01T13:34:56.789+0200",
    "version_date": "2019-02-01T13:35:30.789+0200",
    "download_filename": "my_labfolder_content.zip",
    "download_href": "https://eln.labfolder.com/api/v2/exports/xhtml/20e699a3-4764-461f-a4bc-d10d7cbba3f0?X-Labfolder-Signature=2ff8f6e9044138adb49e4a3c0674b5b4992c8c51aa907f605ecf5da85833d020&X-Labfolder-Expires=1554974215285"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "the unique id of the export"
      },
      "user_id": {
        "type": "string",
        "description": "the unique id of the user, who created the export"
      },
      "type": {
        "type": "string",
        "enum": [
          "XHTML"
        ],
        "description": "the type of export"
      },
      "content": {
        "type": "object",
        "properties": {
          "project_ids": {
            "type": "array",
            "description": "the ids of projects that are contained in the export"
          },
          "entry_ids": {
            "type": "array",
            "description": "the ids of entries that are contained in the export"
          },
          "template_ids": {
            "type": "array",
            "description": "the ids of templates that are contained in the export"
          },
          "group_ids": {
            "type": "array",
            "description": "the ids of complete groups that are contained in the export"
          }
        },
        "required": [
          "project_ids",
          "entry_ids",
          "template_ids",
          "group_ids"
        ],
        "additionalProperties": false,
        "description": "object defining the export content scope"
      },
      "status": {
        "type": "string",
        "enum": [
          "NEW",
          "RUNNING",
          "FINISHED",
          "REMOVED",
          "ERROR",
          "QUEUED",
          "ABORT_PARALLEL"
        ],
        "description": "the status of the export in the export life cycle"
      },
      "completion_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "date when the export file creation was completed"
      },
      "download_file_length": {
        "type": "number",
        "description": "the export download file content size in bytes"
      },
      "creation_date": {
        "type": "string",
        "description": "date when the export was created"
      },
      "version_date": {
        "type": "string",
        "description": "date when the export was last modified"
      },
      "download_filename": {
        "type": "string",
        "description": "the filename used for the finished export downloadable file"
      },
      "download_href": {
        "type": [
          "string",
          "null"
        ],
        "description": "entity specific pre-signed download URL, that is valid until the date (in milliseconds) from the X-Labfolder-Expires parameter"
      }
    },
    "required": [
      "id",
      "user_id",
      "type",
      "content",
      "status",
      "completion_date",
      "download_file_length",
      "creation_date",
      "version_date",
      "download_filename"
    ]
  }
}

Get XHTML Export
GET/exports/xhtml/{id}

Returns the current version of the XHTML export.

Example URI

GET /exports/xhtml/a6e15cda-a48c-463c-bcc4-cf92c8323d8b
URI Parameters
HideShow
id
string (required) Example: a6e15cda-a48c-463c-bcc4-cf92c8323d8b

id of the XHTML export

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "id": "20e699a3-4764-461f-a4bc-d10d7cbba3f0",
  "user_id": "11038",
  "type": "XHTML",
  "content": {
    "project_ids": [
      "36272"
    ],
    "entry_ids": [],
    "template_ids": [],
    "group_ids": []
  },
  "status": "FINISHED",
  "completion_date": "2019-02-01T13:35:30.789+0200",
  "download_file_length": 12345,
  "creation_date": "2019-02-01T13:34:56.789+0200",
  "version_date": "2019-02-01T13:35:30.789+0200",
  "download_filename": "my_labfolder_content.zip",
  "download_href": "https://eln.labfolder.com/api/v2/exports/xhtml/20e699a3-4764-461f-a4bc-d10d7cbba3f0?X-Labfolder-Signature=2ff8f6e9044138adb49e4a3c0674b5b4992c8c51aa907f605ecf5da85833d020&X-Labfolder-Expires=1554974215285"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the export"
    },
    "user_id": {
      "type": "string",
      "description": "the unique id of the user, who created the export"
    },
    "type": {
      "type": "string",
      "enum": [
        "XHTML"
      ],
      "description": "the type of export"
    },
    "content": {
      "type": "object",
      "properties": {
        "project_ids": {
          "type": "array",
          "description": "the ids of projects that are contained in the export"
        },
        "entry_ids": {
          "type": "array",
          "description": "the ids of entries that are contained in the export"
        },
        "template_ids": {
          "type": "array",
          "description": "the ids of templates that are contained in the export"
        },
        "group_ids": {
          "type": "array",
          "description": "the ids of complete groups that are contained in the export"
        }
      },
      "required": [
        "project_ids",
        "entry_ids",
        "template_ids",
        "group_ids"
      ],
      "additionalProperties": false,
      "description": "object defining the export content scope"
    },
    "status": {
      "type": "string",
      "enum": [
        "NEW",
        "RUNNING",
        "FINISHED",
        "REMOVED",
        "ERROR",
        "QUEUED",
        "ABORT_PARALLEL"
      ],
      "description": "the status of the export in the export life cycle"
    },
    "completion_date": {
      "type": [
        "string",
        "null"
      ],
      "description": "date when the export file creation was completed"
    },
    "download_file_length": {
      "type": "number",
      "description": "the export download file content size in bytes"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the export was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the export was last modified"
    },
    "download_filename": {
      "type": "string",
      "description": "the filename used for the finished export downloadable file"
    },
    "download_href": {
      "type": [
        "string",
        "null"
      ],
      "description": "entity specific pre-signed download URL, that is valid until the date (in milliseconds) from the X-Labfolder-Expires parameter"
    }
  },
  "required": [
    "id",
    "user_id",
    "type",
    "content",
    "status",
    "completion_date",
    "download_file_length",
    "creation_date",
    "version_date",
    "download_filename"
  ],
  "additionalProperties": false
}

Download XHTML Export File
GET/exports/xhtml/{id}/download

Download the result file of a finished XHTML export.

Example URI

GET /exports/xhtml/a6e15cda-a48c-463c-bcc4-cf92c8323d8b/download
URI Parameters
HideShow
id
string (required) Example: a6e15cda-a48c-463c-bcc4-cf92c8323d8b

id of the XHTML export

Response  200
HideShow
Headers
Content-Type: application/zip
Content-Disposition: `attachment;filename="my_labfolder_data.zip"`
Content-Length: 12345
Body
... file content as binary ...

Create XHTML Export
POST/exports/xhtml

Create a XHTML export of all content (Projects with their Entries & Templates) the requesting user owns.

Example URI

POST /exports/xhtml
Request  Create XHTML Export
HideShow
Headers
Content-Type: application/json
Body
{}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {}
}
Response  202
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /exports/xhtml/20e699a3-4764-461f-a4bc-d10d7cbba3f0
Body
{
  "id": "20e699a3-4764-461f-a4bc-d10d7cbba3f0",
  "user_id": "11038",
  "type": "XHTML",
  "content": {
    "project_ids": [
      "36272"
    ],
    "entry_ids": [],
    "template_ids": [],
    "group_ids": []
  },
  "status": "FINISHED",
  "completion_date": "2019-02-01T13:35:30.789+0200",
  "download_file_length": 12345,
  "creation_date": "2019-02-01T13:34:56.789+0200",
  "version_date": "2019-02-01T13:35:30.789+0200",
  "download_filename": "my_labfolder_content.zip",
  "download_href": "https://eln.labfolder.com/api/v2/exports/xhtml/20e699a3-4764-461f-a4bc-d10d7cbba3f0?X-Labfolder-Signature=2ff8f6e9044138adb49e4a3c0674b5b4992c8c51aa907f605ecf5da85833d020&X-Labfolder-Expires=1554974215285"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "the unique id of the export"
    },
    "user_id": {
      "type": "string",
      "description": "the unique id of the user, who created the export"
    },
    "type": {
      "type": "string",
      "enum": [
        "XHTML"
      ],
      "description": "the type of export"
    },
    "content": {
      "type": "object",
      "properties": {
        "project_ids": {
          "type": "array",
          "description": "the ids of projects that are contained in the export"
        },
        "entry_ids": {
          "type": "array",
          "description": "the ids of entries that are contained in the export"
        },
        "template_ids": {
          "type": "array",
          "description": "the ids of templates that are contained in the export"
        },
        "group_ids": {
          "type": "array",
          "description": "the ids of complete groups that are contained in the export"
        }
      },
      "required": [
        "project_ids",
        "entry_ids",
        "template_ids",
        "group_ids"
      ],
      "additionalProperties": false,
      "description": "object defining the export content scope"
    },
    "status": {
      "type": "string",
      "enum": [
        "NEW",
        "RUNNING",
        "FINISHED",
        "REMOVED",
        "ERROR",
        "QUEUED",
        "ABORT_PARALLEL"
      ],
      "description": "the status of the export in the export life cycle"
    },
    "completion_date": {
      "type": [
        "string",
        "null"
      ],
      "description": "date when the export file creation was completed"
    },
    "download_file_length": {
      "type": "number",
      "description": "the export download file content size in bytes"
    },
    "creation_date": {
      "type": "string",
      "description": "date when the export was created"
    },
    "version_date": {
      "type": "string",
      "description": "date when the export was last modified"
    },
    "download_filename": {
      "type": "string",
      "description": "the filename used for the finished export downloadable file"
    },
    "download_href": {
      "type": [
        "string",
        "null"
      ],
      "description": "entity specific pre-signed download URL, that is valid until the date (in milliseconds) from the X-Labfolder-Expires parameter"
    }
  },
  "required": [
    "id",
    "user_id",
    "type",
    "content",
    "status",
    "completion_date",
    "download_file_length",
    "creation_date",
    "version_date",
    "download_filename"
  ],
  "additionalProperties": false
}

Labregister

Categories

List Categories
GET/mdb/categories{?group_id,expand}

Returns the list of all accessible categories of the requesting user

Example URI

GET /mdb/categories?group_id=1200&expand=
URI Parameters
HideShow
group_id
string (optional) Example: 1200

Only return the categories that belong to the specified group

expand
string (optional) 

A comma separated list of related domain objects that should be expanded for all categories returned

Choices: creator

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "title": "Luke's Private Vehicles",
    "attributes": [
      {
        "type": "Text",
        "title": "Model",
        "mandatory": false,
        "options": [
          "null"
        ],
        "settings": null
      }
    ],
    "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
    "group_id": "1200",
    "creator_id": "11038",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
    "version_date": "2017-02-15T12:34:56.789+0200",
    "version": 1
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "title": {
        "type": "string",
        "description": "the display title of the category"
      },
      "attributes": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "enum": [
                "Text",
                "Date",
                "Number",
                "Url",
                "Dropdown",
                "Barcode"
              ]
            },
            "title": {
              "type": "string",
              "description": "the display title of the attribute"
            },
            "mandatory": {
              "type": "boolean",
              "description": "when set to `true` the items created in this category should have an associated value for this attribute"
            },
            "options": {
              "type": [
                "array",
                "null"
              ],
              "description": "when the attribute type is Dropdown, then this array should be sent together"
            },
            "settings": {
              "type": [
                "object",
                "null"
              ],
              "properties": {},
              "description": "the field which contains additional settings data of attribute"
            }
          },
          "required": [
            "type",
            "title",
            "mandatory"
          ]
        },
        "description": "The attribute definitions of the category"
      },
      "id": {
        "type": "string",
        "description": "the stable id of the category"
      },
      "group_id": {
        "type": [
          "string",
          "null"
        ],
        "description": "the id of the group to which the category is associated"
      },
      "creator_id": {
        "type": "string",
        "description": "the user id of the original author"
      },
      "creation_date": {
        "type": "string",
        "description": "the creation date of the category"
      },
      "version_id": {
        "type": "string",
        "description": "the unique, version id of the category"
      },
      "version_date": {
        "type": "string",
        "description": "the last modification date of the category"
      },
      "version": {
        "type": "number",
        "description": "the version number of the category (it is automatically incremented for each modification on the category)"
      }
    },
    "required": [
      "title",
      "id",
      "group_id",
      "creator_id",
      "creation_date",
      "version_id",
      "version_date",
      "version"
    ]
  }
}

Get Category
GET/mdb/categories/{id}{?expand}

Returns the category

Example URI

GET /mdb/categories/cb80222b-3a22-4cb9-b5de-52fce39d0262?expand=
URI Parameters
HideShow
id
string (required) Example: cb80222b-3a22-4cb9-b5de-52fce39d0262

id of the category

expand
string (optional) 

A comma separated list of related domain objects that should be expanded for all categories returned

Choices: creator

Request  Get Category
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Text",
      "title": "Model",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": null
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "1200",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown",
              "Barcode"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": [
              "object",
              "null"
            ],
            "properties": {},
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    },
    "creator_id": {
      "type": "string",
      "description": "the user id of the original author"
    },
    "creation_date": {
      "type": "string",
      "description": "the creation date of the category"
    },
    "version_id": {
      "type": "string",
      "description": "the unique, version id of the category"
    },
    "version_date": {
      "type": "string",
      "description": "the last modification date of the category"
    },
    "version": {
      "type": "number",
      "description": "the version number of the category (it is automatically incremented for each modification on the category)"
    }
  },
  "required": [
    "title",
    "attributes",
    "id",
    "group_id",
    "creator_id",
    "creation_date",
    "version_id",
    "version_date",
    "version"
  ],
  "additionalProperties": false
}
Request  Get Category with Barcode Attribute
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Barcode",
      "title": "Barcode",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": {
        "barcode_generation_method": "MANUAL",
        "barcode_type": "CODE_128"
      }
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "1200",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Barcode",
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": "object",
            "properties": {
              "barcode_generation_method": {
                "type": "string",
                "enum": [
                  "MANUAL",
                  "AUTO"
                ],
                "description": "this enum should contain Barcode Attribute's generation method"
              },
              "barcode_type": {
                "type": "string",
                "enum": [
                  "CODE_128",
                  "DATA_MATRIX"
                ],
                "description": "this enum should contain Barcode Attribute's type"
              }
            },
            "required": [
              "barcode_generation_method",
              "barcode_type"
            ],
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory",
          "settings"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    },
    "creator_id": {
      "type": "string",
      "description": "the user id of the original author"
    },
    "creation_date": {
      "type": "string",
      "description": "the creation date of the category"
    },
    "version_id": {
      "type": "string",
      "description": "the unique, version id of the category"
    },
    "version_date": {
      "type": "string",
      "description": "the last modification date of the category"
    },
    "version": {
      "type": "number",
      "description": "the version number of the category (it is automatically incremented for each modification on the category)"
    }
  },
  "required": [
    "title",
    "attributes",
    "id",
    "group_id",
    "creator_id",
    "creation_date",
    "version_id",
    "version_date",
    "version"
  ],
  "additionalProperties": false
}

Create Category
POST/mdb/categories

Create a Labregister category

Example URI

POST /mdb/categories
Request  Create Category in Private Space
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Text",
      "title": "Model",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": null
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown",
              "Barcode"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": [
              "object",
              "null"
            ],
            "properties": {},
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory"
        ]
      },
      "description": "The attribute definitions of the category"
    }
  },
  "required": [
    "title"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /mdb/categories/76625e69-52eb-40b5-a610-99ab8b801cf9
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Text",
      "title": "Model",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": null
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "null",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown",
              "Barcode"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": [
              "object",
              "null"
            ],
            "properties": {},
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    },
    "creator_id": {
      "type": "string",
      "description": "the user id of the original author"
    },
    "creation_date": {
      "type": "string",
      "description": "the creation date of the category"
    },
    "version_id": {
      "type": "string",
      "description": "the unique, version id of the category"
    },
    "version_date": {
      "type": "string",
      "description": "the last modification date of the category"
    },
    "version": {
      "type": "number",
      "description": "the version number of the category (it is automatically incremented for each modification on the category)"
    }
  },
  "required": [
    "title",
    "id",
    "group_id",
    "creator_id",
    "creation_date",
    "version_id",
    "version_date",
    "version"
  ]
}
Request  Create Category with Barcode Attribute in Private Space
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Barcode",
      "title": "Barcode",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": {
        "barcode_generation_method": "MANUAL",
        "barcode_type": "CODE_128"
      }
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Barcode",
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": "object",
            "properties": {
              "barcode_generation_method": {
                "type": "string",
                "enum": [
                  "MANUAL",
                  "AUTO"
                ],
                "description": "this enum should contain Barcode Attribute's generation method"
              },
              "barcode_type": {
                "type": "string",
                "enum": [
                  "CODE_128",
                  "DATA_MATRIX"
                ],
                "description": "this enum should contain Barcode Attribute's type"
              }
            },
            "required": [
              "barcode_generation_method",
              "barcode_type"
            ],
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory",
          "settings"
        ]
      },
      "description": "The attribute definitions of the category"
    }
  },
  "required": [
    "title"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /mdb/categories/76625e69-52eb-40b5-a610-99ab8b801cf9
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Barcode",
      "title": "Barcode",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": {
        "barcode_generation_method": "MANUAL",
        "barcode_type": "CODE_128"
      }
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "null",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Barcode",
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": "object",
            "properties": {
              "barcode_generation_method": {
                "type": "string",
                "enum": [
                  "MANUAL",
                  "AUTO"
                ],
                "description": "this enum should contain Barcode Attribute's generation method"
              },
              "barcode_type": {
                "type": "string",
                "enum": [
                  "CODE_128",
                  "DATA_MATRIX"
                ],
                "description": "this enum should contain Barcode Attribute's type"
              }
            },
            "required": [
              "barcode_generation_method",
              "barcode_type"
            ],
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory",
          "settings"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    },
    "creator_id": {
      "type": "string",
      "description": "the user id of the original author"
    },
    "creation_date": {
      "type": "string",
      "description": "the creation date of the category"
    },
    "version_id": {
      "type": "string",
      "description": "the unique, version id of the category"
    },
    "version_date": {
      "type": "string",
      "description": "the last modification date of the category"
    },
    "version": {
      "type": "number",
      "description": "the version number of the category (it is automatically incremented for each modification on the category)"
    }
  },
  "required": [
    "title",
    "id",
    "group_id",
    "creator_id",
    "creation_date",
    "version_id",
    "version_date",
    "version"
  ]
}
Request  Create Category in a Group
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Text",
      "title": "Model",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": null
    }
  ],
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown",
              "Barcode"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": [
              "object",
              "null"
            ],
            "properties": {},
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "group_id": {
      "type": "string",
      "description": "the id of the group to which the category is associated"
    }
  },
  "required": [
    "title",
    "group_id"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Location: /mdb/categories/76625e69-52eb-40b5-a610-99ab8b801cf9
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Text",
      "title": "Model",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": null
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "1200",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown",
              "Barcode"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": [
              "object",
              "null"
            ],
            "properties": {},
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    },
    "creator_id": {
      "type": "string",
      "description": "the user id of the original author"
    },
    "creation_date": {
      "type": "string",
      "description": "the creation date of the category"
    },
    "version_id": {
      "type": "string",
      "description": "the unique, version id of the category"
    },
    "version_date": {
      "type": "string",
      "description": "the last modification date of the category"
    },
    "version": {
      "type": "number",
      "description": "the version number of the category (it is automatically incremented for each modification on the category)"
    }
  },
  "required": [
    "title",
    "id",
    "group_id",
    "creator_id",
    "creation_date",
    "version_id",
    "version_date",
    "version"
  ]
}

Update Category
PUT/mdb/categories/{id}

Update a Labregister category. Note that you need to pass the attribute id if you want to update an existing attribute. Otherwise it will be created as new rather than being updated.

Example URI

PUT /mdb/categories/b10b785d-d87d-48cf-9c0b-d7be08f377b2
URI Parameters
HideShow
id
string (required) Example: b10b785d-d87d-48cf-9c0b-d7be08f377b2

the stable id of the category

Request  Update Category
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Text",
      "title": "Model",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": null
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown",
              "Barcode"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": [
              "object",
              "null"
            ],
            "properties": {},
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    }
  },
  "required": [
    "title",
    "id"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Text",
      "title": "Model",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": null
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "1200",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version": 2
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown",
              "Barcode"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": [
              "object",
              "null"
            ],
            "properties": {},
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    },
    "creator_id": {
      "type": "string",
      "description": "the user id of the original author"
    },
    "creation_date": {
      "type": "string",
      "description": "the creation date of the category"
    },
    "version_id": {
      "type": "string",
      "description": "the unique, version id of the category"
    },
    "version_date": {
      "type": "string",
      "description": "the last modification date of the category"
    },
    "version": {
      "type": "number",
      "description": "the version number of the category (it is automatically incremented for each modification on the category)"
    }
  },
  "required": [
    "title",
    "id",
    "group_id",
    "creator_id",
    "creation_date",
    "version_id",
    "version_date",
    "version"
  ]
}
Request  Update Category with Barcode Attribute
HideShow
Headers
Content-Type: application/json
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Barcode",
      "title": "Barcode",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": {
        "barcode_generation_method": "MANUAL",
        "barcode_type": "CODE_128"
      }
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "1200"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Barcode",
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": "object",
            "properties": {
              "barcode_generation_method": {
                "type": "string",
                "enum": [
                  "MANUAL",
                  "AUTO"
                ],
                "description": "this enum should contain Barcode Attribute's generation method"
              },
              "barcode_type": {
                "type": "string",
                "enum": [
                  "CODE_128",
                  "DATA_MATRIX"
                ],
                "description": "this enum should contain Barcode Attribute's type"
              }
            },
            "required": [
              "barcode_generation_method",
              "barcode_type"
            ],
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory",
          "settings"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    }
  },
  "required": [
    "title",
    "id"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "title": "Luke's Private Vehicles",
  "attributes": [
    {
      "type": "Barcode",
      "title": "Barcode",
      "mandatory": false,
      "options": [
        "null"
      ],
      "settings": {
        "barcode_generation_method": "MANUAL",
        "barcode_type": "CODE_128"
      }
    }
  ],
  "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
  "group_id": "1200",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version": 2
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "the display title of the category"
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "Barcode",
              "Text",
              "Date",
              "Number",
              "Url",
              "Dropdown"
            ]
          },
          "title": {
            "type": "string",
            "description": "the display title of the attribute"
          },
          "mandatory": {
            "type": "boolean",
            "description": "when set to `true` the items created in this category should have an associated value for this attribute"
          },
          "options": {
            "type": [
              "array",
              "null"
            ],
            "description": "when the attribute type is Dropdown, then this array should be sent together"
          },
          "settings": {
            "type": "object",
            "properties": {
              "barcode_generation_method": {
                "type": "string",
                "enum": [
                  "MANUAL",
                  "AUTO"
                ],
                "description": "this enum should contain Barcode Attribute's generation method"
              },
              "barcode_type": {
                "type": "string",
                "enum": [
                  "CODE_128",
                  "DATA_MATRIX"
                ],
                "description": "this enum should contain Barcode Attribute's type"
              }
            },
            "required": [
              "barcode_generation_method",
              "barcode_type"
            ],
            "description": "the field which contains additional settings data of attribute"
          }
        },
        "required": [
          "type",
          "title",
          "mandatory",
          "settings"
        ]
      },
      "description": "The attribute definitions of the category"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the category"
    },
    "group_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "the id of the group to which the category is associated"
    },
    "creator_id": {
      "type": "string",
      "description": "the user id of the original author"
    },
    "creation_date": {
      "type": "string",
      "description": "the creation date of the category"
    },
    "version_id": {
      "type": "string",
      "description": "the unique, version id of the category"
    },
    "version_date": {
      "type": "string",
      "description": "the last modification date of the category"
    },
    "version": {
      "type": "number",
      "description": "the version number of the category (it is automatically incremented for each modification on the category)"
    }
  },
  "required": [
    "title",
    "id",
    "group_id",
    "creator_id",
    "creation_date",
    "version_id",
    "version_date",
    "version"
  ]
}

Delete Category
DELETE/mdb/categories/{id}

Deletes the Category. Note: the entity is not deleted, but is flagged as ‘hidden’.

Example URI

DELETE /mdb/categories/b10b785d-d87d-48cf-9c0b-d7be08f377b2
URI Parameters
HideShow
id
string (required) Example: b10b785d-d87d-48cf-9c0b-d7be08f377b2

id of the category to delete

Response  204

Category Attributes

List Default Category Attributes
GET/mdb/categories/attributes/default

Returns the default list of category attributes

Example URI

GET /mdb/categories/attributes/default
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "title": "General",
    "attributes": [
      {
        "type": "Text",
        "title": "Model",
        "mandatory": false,
        "options": [
          "null"
        ],
        "settings": null
      }
    ]
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "title": {
        "type": "string",
        "description": "the display name of the atrribute group"
      },
      "attributes": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "enum": [
                "Text",
                "Date",
                "Number",
                "Url",
                "Dropdown",
                "Barcode"
              ]
            },
            "title": {
              "type": "string",
              "description": "the display title of the attribute"
            },
            "mandatory": {
              "type": "boolean",
              "description": "when set to `true` the items created in this category should have an associated value for this attribute"
            },
            "options": {
              "type": [
                "array",
                "null"
              ],
              "description": "when the attribute type is Dropdown, then this array should be sent together"
            },
            "settings": {
              "type": [
                "object",
                "null"
              ],
              "properties": {},
              "description": "the field which contains additional settings data of attribute"
            }
          },
          "required": [
            "type",
            "title",
            "mandatory"
          ]
        },
        "description": "the pre-defined attribute definitions which belong to this group"
      }
    },
    "required": [
      "title"
    ]
  }
}

List User Attributes
GET/mdb/categories/attributes/custom

Returns all custom category attributes created in categories the user has access to

Example URI

GET /mdb/categories/attributes/custom
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "type": "Text",
    "title": "Model",
    "mandatory": false,
    "options": [
      "null"
    ],
    "settings": null
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "type": {
        "type": "string",
        "enum": [
          "Text",
          "Date",
          "Number",
          "Url",
          "Dropdown",
          "Barcode"
        ]
      },
      "title": {
        "type": "string",
        "description": "the display title of the attribute"
      },
      "mandatory": {
        "type": "boolean",
        "description": "when set to `true` the items created in this category should have an associated value for this attribute"
      },
      "options": {
        "type": [
          "array",
          "null"
        ],
        "description": "when the attribute type is Dropdown, then this array should be sent together"
      },
      "settings": {
        "type": [
          "object",
          "null"
        ],
        "properties": {},
        "description": "the field which contains additional settings data of attribute"
      }
    },
    "required": [
      "type",
      "title",
      "mandatory"
    ]
  }
}

Items

List Items
GET/mdb/items{?category_id,title,query,expand}

Returns the list of all accessible items sorted by display title. Note that at least one of the parameters (category_id, title, or query) needs to be sent within the request.

Example URI

GET /mdb/items?category_id=&title=&query=&expand=
URI Parameters
HideShow
category_id
string (optional) 

The category id to show items for. If none provided will show all items.

title
string (optional) 

The search term to filter items by title. If not provided it will not filter.

query
string (optional) 

The search term to filter items by all attributes, including title. If not provided it will not filter.

expand
string (optional) 

A comma separated list of related domain objects that should be expanded for all items returned

Choices: category

Request  Get All Items of a Category
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "category_id": "e87e6534-2ae0-4139-bc48-cc668f330069",
    "title": "X-Wing Fighter",
    "id": "d395ff8e-3430-4cb5-8d34-b0a3399bf6b3",
    "item_code": "LR-20170210-1",
    "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
    "category_version_id": "1095e78f-9fba-4e8f-a224-b5f83f617809",
    "creator_id": "11038",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version": 8,
    "version_count": 10,
    "version_date": "2017-02-15T12:34:56.789+0200",
    "version_author_id": "11040",
    "custom_attributes": {
      "0553c003-9014-47ef-9522-115ad7d4b3a1": "1001",
      "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": "Available"
    },
    "files": []
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "category_id": {
        "type": "string",
        "description": "the stable id of the category which the item belongs to"
      },
      "title": {
        "type": "string",
        "description": "the display title of the item"
      },
      "id": {
        "type": "string",
        "description": "the stable id of the item"
      },
      "item_code": {
        "type": "string",
        "description": "server-based unique code to identify item in a user-friendly way"
      },
      "version_id": {
        "type": "string",
        "description": "the unique, version id of the item"
      },
      "category_version_id": {
        "type": "string",
        "description": "the unique, version id of the category which the item belongs to"
      },
      "creator_id": {
        "type": "string",
        "description": "the id of the original author of this item"
      },
      "creation_date": {
        "type": "string",
        "description": "the creation date of the item"
      },
      "version": {
        "type": "number",
        "description": "the version number (it is automatically incremented for each modification on the item)"
      },
      "version_count": {
        "type": "number",
        "description": "the total number of versions available for this item"
      },
      "version_date": {
        "type": "string",
        "description": "the last modification date of the item"
      },
      "version_author_id": {
        "type": "string",
        "description": "the id of the user which authored this version of the item"
      },
      "custom_attributes": {
        "type": "object",
        "properties": {
          "0553c003-9014-47ef-9522-115ad7d4b3a1": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key-value pair of the attribute id and its associated value"
          },
          "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key-value pair of the attribute id and its associated value"
          }
        },
        "description": "The attribute key-value map of this item based on its category attributes"
      },
      "files": {
        "type": "array",
        "description": "The string array with the file uuids which are attached to this item"
      }
    },
    "required": [
      "category_id",
      "title",
      "id",
      "item_code",
      "version_id",
      "category_version_id",
      "creator_id",
      "creation_date",
      "version",
      "version_count",
      "version_date",
      "version_author_id",
      "custom_attributes",
      "files"
    ]
  }
}
Request  Get All Items by Title
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "category_id": "e87e6534-2ae0-4139-bc48-cc668f330069",
    "title": "X-Wing Fighter",
    "id": "d395ff8e-3430-4cb5-8d34-b0a3399bf6b3",
    "item_code": "LR-20170210-1",
    "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
    "category_version_id": "1095e78f-9fba-4e8f-a224-b5f83f617809",
    "creator_id": "11038",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version": 8,
    "version_count": 10,
    "version_date": "2017-02-15T12:34:56.789+0200",
    "version_author_id": "11040",
    "custom_attributes": {
      "0553c003-9014-47ef-9522-115ad7d4b3a1": "1001",
      "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": "Available"
    },
    "files": []
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "category_id": {
        "type": "string",
        "description": "the stable id of the category which the item belongs to"
      },
      "title": {
        "type": "string",
        "description": "the display title of the item"
      },
      "id": {
        "type": "string",
        "description": "the stable id of the item"
      },
      "item_code": {
        "type": "string",
        "description": "server-based unique code to identify item in a user-friendly way"
      },
      "version_id": {
        "type": "string",
        "description": "the unique, version id of the item"
      },
      "category_version_id": {
        "type": "string",
        "description": "the unique, version id of the category which the item belongs to"
      },
      "creator_id": {
        "type": "string",
        "description": "the id of the original author of this item"
      },
      "creation_date": {
        "type": "string",
        "description": "the creation date of the item"
      },
      "version": {
        "type": "number",
        "description": "the version number (it is automatically incremented for each modification on the item)"
      },
      "version_count": {
        "type": "number",
        "description": "the total number of versions available for this item"
      },
      "version_date": {
        "type": "string",
        "description": "the last modification date of the item"
      },
      "version_author_id": {
        "type": "string",
        "description": "the id of the user which authored this version of the item"
      },
      "custom_attributes": {
        "type": "object",
        "properties": {
          "0553c003-9014-47ef-9522-115ad7d4b3a1": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key-value pair of the attribute id and its associated value"
          },
          "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key-value pair of the attribute id and its associated value"
          }
        },
        "description": "The attribute key-value map of this item based on its category attributes"
      },
      "files": {
        "type": "array",
        "description": "The string array with the file uuids which are attached to this item"
      }
    },
    "required": [
      "category_id",
      "title",
      "id",
      "item_code",
      "version_id",
      "category_version_id",
      "creator_id",
      "creation_date",
      "version",
      "version_count",
      "version_date",
      "version_author_id",
      "custom_attributes",
      "files"
    ]
  }
}
Request  Get All Items by All Attribute Values
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "category_id": "e87e6534-2ae0-4139-bc48-cc668f330069",
    "title": "X-Wing Fighter",
    "id": "d395ff8e-3430-4cb5-8d34-b0a3399bf6b3",
    "item_code": "LR-20170210-1",
    "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
    "category_version_id": "1095e78f-9fba-4e8f-a224-b5f83f617809",
    "creator_id": "11038",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version": 8,
    "version_count": 10,
    "version_date": "2017-02-15T12:34:56.789+0200",
    "version_author_id": "11040",
    "custom_attributes": {
      "0553c003-9014-47ef-9522-115ad7d4b3a1": "1001",
      "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": "Available"
    },
    "files": []
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "category_id": {
        "type": "string",
        "description": "the stable id of the category which the item belongs to"
      },
      "title": {
        "type": "string",
        "description": "the display title of the item"
      },
      "id": {
        "type": "string",
        "description": "the stable id of the item"
      },
      "item_code": {
        "type": "string",
        "description": "server-based unique code to identify item in a user-friendly way"
      },
      "version_id": {
        "type": "string",
        "description": "the unique, version id of the item"
      },
      "category_version_id": {
        "type": "string",
        "description": "the unique, version id of the category which the item belongs to"
      },
      "creator_id": {
        "type": "string",
        "description": "the id of the original author of this item"
      },
      "creation_date": {
        "type": "string",
        "description": "the creation date of the item"
      },
      "version": {
        "type": "number",
        "description": "the version number (it is automatically incremented for each modification on the item)"
      },
      "version_count": {
        "type": "number",
        "description": "the total number of versions available for this item"
      },
      "version_date": {
        "type": "string",
        "description": "the last modification date of the item"
      },
      "version_author_id": {
        "type": "string",
        "description": "the id of the user which authored this version of the item"
      },
      "custom_attributes": {
        "type": "object",
        "properties": {
          "0553c003-9014-47ef-9522-115ad7d4b3a1": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key-value pair of the attribute id and its associated value"
          },
          "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key-value pair of the attribute id and its associated value"
          }
        },
        "description": "The attribute key-value map of this item based on its category attributes"
      },
      "files": {
        "type": "array",
        "description": "The string array with the file uuids which are attached to this item"
      }
    },
    "required": [
      "category_id",
      "title",
      "id",
      "item_code",
      "version_id",
      "category_version_id",
      "creator_id",
      "creation_date",
      "version",
      "version_count",
      "version_date",
      "version_author_id",
      "custom_attributes",
      "files"
    ]
  }
}
Request  Get All Items of a Category with Category Information
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
[
  {
    "category_id": "e87e6534-2ae0-4139-bc48-cc668f330069",
    "title": "X-Wing Fighter",
    "id": "d395ff8e-3430-4cb5-8d34-b0a3399bf6b3",
    "item_code": "LR-20170210-1",
    "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
    "category_version_id": "1095e78f-9fba-4e8f-a224-b5f83f617809",
    "creator_id": "11038",
    "creation_date": "2017-02-10T12:34:56.789+0200",
    "version": 8,
    "version_count": 10,
    "version_date": "2017-02-15T12:34:56.789+0200",
    "version_author_id": "11040",
    "custom_attributes": {
      "0553c003-9014-47ef-9522-115ad7d4b3a1": "1001",
      "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": "Available"
    },
    "files": [],
    "category": {
      "title": "Luke's Private Vehicles",
      "attributes": [
        {
          "type": "Text",
          "title": "Model",
          "mandatory": false,
          "options": [
            "null"
          ],
          "settings": null
        }
      ],
      "id": "b10b785d-d87d-48cf-9c0b-d7be08f377b2",
      "group_id": "1200",
      "creator_id": "11038",
      "creation_date": "2017-02-10T12:34:56.789+0200",
      "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
      "version_date": "2017-02-15T12:34:56.789+0200",
      "version": 1
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "category_id": {
        "type": "string",
        "description": "the stable id of the category which the item belongs to"
      },
      "title": {
        "type": "string",
        "description": "the display title of the item"
      },
      "id": {
        "type": "string",
        "description": "the stable id of the item"
      },
      "item_code": {
        "type": "string",
        "description": "server-based unique code to identify item in a user-friendly way"
      },
      "version_id": {
        "type": "string",
        "description": "the unique, version id of the item"
      },
      "category_version_id": {
        "type": "string",
        "description": "the unique, version id of the category which the item belongs to"
      },
      "creator_id": {
        "type": "string",
        "description": "the id of the original author of this item"
      },
      "creation_date": {
        "type": "string",
        "description": "the creation date of the item"
      },
      "version": {
        "type": "number",
        "description": "the version number (it is automatically incremented for each modification on the item)"
      },
      "version_count": {
        "type": "number",
        "description": "the total number of versions available for this item"
      },
      "version_date": {
        "type": "string",
        "description": "the last modification date of the item"
      },
      "version_author_id": {
        "type": "string",
        "description": "the id of the user which authored this version of the item"
      },
      "custom_attributes": {
        "type": "object",
        "properties": {
          "0553c003-9014-47ef-9522-115ad7d4b3a1": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key-value pair of the attribute id and its associated value"
          },
          "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key-value pair of the attribute id and its associated value"
          }
        },
        "description": "The attribute key-value map of this item based on its category attributes"
      },
      "files": {
        "type": "array",
        "description": "The string array with the file uuids which are attached to this item"
      },
      "category": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "the display title of the category"
          },
          "attributes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "Text",
                    "Date",
                    "Number",
                    "Url",
                    "Dropdown",
                    "Barcode"
                  ]
                },
                "title": {
                  "type": "string",
                  "description": "the display title of the attribute"
                },
                "mandatory": {
                  "type": "boolean",
                  "description": "when set to `true` the items created in this category should have an associated value for this attribute"
                },
                "options": {
                  "type": [
                    "array",
                    "null"
                  ],
                  "description": "when the attribute type is Dropdown, then this array should be sent together"
                },
                "settings": {
                  "type": [
                    "object",
                    "null"
                  ],
                  "properties": {},
                  "description": "the field which contains additional settings data of attribute"
                }
              },
              "required": [
                "type",
                "title",
                "mandatory"
              ]
            },
            "description": "The attribute definitions of the category"
          },
          "id": {
            "type": "string",
            "description": "the stable id of the category"
          },
          "group_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "the id of the group to which the category is associated"
          },
          "creator_id": {
            "type": "string",
            "description": "the user id of the original author"
          },
          "creation_date": {
            "type": "string",
            "description": "the creation date of the category"
          },
          "version_id": {
            "type": "string",
            "description": "the unique, version id of the category"
          },
          "version_date": {
            "type": "string",
            "description": "the last modification date of the category"
          },
          "version": {
            "type": "number",
            "description": "the version number of the category (it is automatically incremented for each modification on the category)"
          }
        },
        "required": [
          "title",
          "id",
          "group_id",
          "creator_id",
          "creation_date",
          "version_id",
          "version_date",
          "version"
        ],
        "description": "the category referenced by the `category_id` property"
      }
    },
    "required": [
      "category_id",
      "title",
      "id",
      "item_code",
      "version_id",
      "category_version_id",
      "creator_id",
      "creation_date",
      "version",
      "version_count",
      "version_date",
      "version_author_id",
      "custom_attributes",
      "files",
      "category"
    ]
  }
}

Get Item
GET/mdb/items/{id}{?expand}

Returns the current version of a Labregister item

Example URI

GET /mdb/items/d395ff8e-3430-4cb5-8d34-b0a3399bf6b3?expand=
URI Parameters
HideShow
id
string (required) Example: d395ff8e-3430-4cb5-8d34-b0a3399bf6b3

stable id of item

expand
string (optional) 

A comma separated list of related domain objects that should be expanded for all items returned.

Choices: category, files_metadata

Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "category_id": "e87e6534-2ae0-4139-bc48-cc668f330069",
  "title": "X-Wing Fighter",
  "id": "d395ff8e-3430-4cb5-8d34-b0a3399bf6b3",
  "item_code": "LR-20170210-1",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "category_version_id": "1095e78f-9fba-4e8f-a224-b5f83f617809",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version": 8,
  "version_count": 10,
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version_author_id": "11040",
  "custom_attributes": {
    "0553c003-9014-47ef-9522-115ad7d4b3a1": "1001",
    "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": "Available"
  },
  "files": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "category_id": {
      "type": "string",
      "description": "the stable id of the category which the item belongs to"
    },
    "title": {
      "type": "string",
      "description": "the display title of the item"
    },
    "id": {
      "type": "string",
      "description": "the stable id of the item"
    },
    "item_code": {
      "type": "string",
      "description": "server-based unique code to identify item in a user-friendly way"
    },
    "version_id": {
      "type": "string",
      "description": "the unique, version id of the item"
    },
    "category_version_id": {
      "type": "string",
      "description": "the unique, version id of the category which the item belongs to"
    },
    "creator_id": {
      "type": "string",
      "description": "the id of the original author of this item"
    },
    "creation_date": {
      "type": "string",
      "description": "the creation date of the item"
    },
    "version": {
      "type": "number",
      "description": "the version number (it is automatically incremented for each modification on the item)"
    },
    "version_count": {
      "type": "number",
      "description": "the total number of versions available for this item"
    },
    "version_date": {
      "type": "string",
      "description": "the last modification date of the item"
    },
    "version_author_id": {
      "type": "string",
      "description": "the id of the user which authored this version of the item"
    },
    "custom_attributes": {
      "type": "object",
      "properties": {
        "0553c003-9014-47ef-9522-115ad7d4b3a1": {
          "type": [
            "string",
            "null"
          ],
          "description": "Key-value pair of the attribute id and its associated value"
        },
        "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": {
          "type": [
            "string",
            "null"
          ],
          "description": "Key-value pair of the attribute id and its associated value"
        }
      },
      "description": "The attribute key-value map of this item based on its category attributes"
    },
    "files": {
      "type": "array",
      "description": "The string array with the file uuids which are attached to this item"
    }
  },
  "required": [
    "category_id",
    "title",
    "id",
    "item_code",
    "version_id",
    "category_version_id",
    "creator_id",
    "creation_date",
    "version",
    "version_count",
    "version_date",
    "version_author_id",
    "custom_attributes",
    "files"
  ],
  "additionalProperties": false
}
Request  ?expand=category
Response  200
HideShow
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "category_id": "e87e6534-2ae0-4139-bc48-cc668f330069",
  "title": "X-Wing Fighter",
  "id": "d395ff8e-3430-4cb5-8d34-b0a3399bf6b3",
  "item_code": "LR-20170210-1",
  "version_id": "620c535d-45bd-497a-ad92-d0222f959d6b",
  "category_version_id": "1095e78f-9fba-4e8f-a224-b5f83f617809",
  "creator_id": "11038",
  "creation_date": "2017-02-10T12:34:56.789+0200",
  "version": 8,
  "version_count": 10,
  "version_date": "2017-02-15T12:34:56.789+0200",
  "version_author_id": "11040",
  "custom_attributes": {
    "0553c003-9014-47ef-9522-115ad7d4b3a1": "1001",
    "f94bb81d-ad1d-4301-9f18-a9bf408b4e65": "Available"
  },
  "files": [],
  "category": {
    "title": "Luke's Private Vehicles",
    "attributes": [
      {
        "type": "Text",
        "title": "Model"