Object Store API Schema - DRAFT (0.1.0)

Download OpenAPI specification:Download

Object Store API Schema

Metadata

List metadatas

By passing in query string, user can get available metadatas authorised

query Parameters
filter[rsql]
string

pass an optional search string for looking up the metadatas

sort
string

optional sort string, can have sort order such as descending denoted by "-"

page[offset]
integer <int32>

number of records to skip when paging

page[limit]
integer <int32> [ 0 .. 50 ]

maximum number of records to return when paging

fields
string

names of sparse fields that should be in query results

include
string

names of related entities that should be in query results

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add a metadata

Add a metadata

Request Body schema: application/json

Metadata to add

required
object

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Get a metadata

Return a single metadata

path Parameters
Id
required
string <uuid>

ID of metadata to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update a metadata

Update a metadata

path Parameters
Id
required
string <uuid>

metadata id to patch

Request Body schema: application/json

metadata to add

required
object

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Delete a metadata

Delete a metadata

path Parameters
Id
required
string <uuid>

metadata id to delete

Responses

Managed Attribute

List managed attributes

By passing in query string, user can get available managed attributes authorised

query Parameters
filter[rsql]
string

pass an optional search string for looking up the managed attributes

sort
string

optional sort string, can have sort order such as descending denoted by "-"

page[offset]
integer <int32>

number of records to skip when paging

page[limit]
integer <int32> [ 0 .. 50 ]

maximum number of records to return when paging

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add a managed attribute

Add a managed attribute

Request Body schema: application/json

Managed attribute to add

required
object

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Get a managed attribute

Return a single managed attribute

path Parameters
Id
required
string <uuid>

ID of managed attribute to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update a managed attribute

Update a managed attribute

path Parameters
Id
required
string <uuid>

managed attribute id to patch

Request Body schema: application/json

managed attribute to add

required
object

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Delete a managed attribute

Delete a managed attribute

path Parameters
Id
required
string <uuid>

managed attribute id to delete

Responses

Object Subtype

List object-subtypes

By passing in query string, user can get available object-subtypes authorised

query Parameters
filter[rsql]
string

pass an optional search string for looking up the object-subtypes

sort
string

optional sort string, can have sort order such as descending denoted by "-"

page[offset]
integer <int32>

number of records to skip when paging

page[limit]
integer <int32> [ 0 .. 50 ]

maximum number of records to return when paging

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add an object-subtype

Add an object-subtype

Request Body schema: application/json

object-subtype to add

required
object

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Get an object-subtype

Return a single object-subtype

path Parameters
Id
required
string <uuid>

ID of object-subtype to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update an object-subtype

Update an object-subtype

path Parameters
Id
required
string <uuid>

object-subtype id to patch

Request Body schema: application/json

object-subtype to update

required
object

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Delete an object-subtype

Delete an object-subtype

path Parameters
Id
required
string <uuid>

object-subtype id to delete

Responses

Derivative

List derivatives

By passing in query string, user can get available derivatives authorised

query Parameters
filter[rsql]
string

pass an optional search string for looking up the derivatives

sort
string

optional sort string, can have sort order such as descending denoted by "-"

page[offset]
integer <int32>

number of records to skip when paging

page[limit]
integer <int32> [ 0 .. 50 ]

maximum number of records to return when paging

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add an derivative

Add an derivative

Request Body schema: application/json

derivative to add

required
object

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Get an derivative

Return a single derivative

path Parameters
Id
required
string <uuid>

ID of derivative to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Delete an derivative

Delete an derivative

path Parameters
Id
required
string <uuid>

derivative id to delete

Responses

File Controller

upload file

upload a file

path Parameters
bucket
required
string

Namespace of the file described by the metadata

Request Body schema:

derivative to add

string <binary>

Responses

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "fileIdentifier": "string",
  • "dcType": "IMAGE",
  • "createdBy": "string",
  • "createdOn": "1985-04-12T23:20:50.52Z",
  • "originalFilename": "string",
  • "receivedMediaType": "string",
  • "detectedMediaType": "string",
  • "detectedFileExtension": "string",
  • "evaluatedMediaType": "string",
  • "evaluatedFileExtension": "string",
  • "sha1Hex": "string",
  • "bucket": "string",
  • "dateTimeDigitized": "string",
  • "exif": [
    ],
  • "isDerivative": true
}

upload derivative

Add an derivative

path Parameters
bucket
required
string

Namespace of the file described by the metadata

Request Body schema:

derivative to add

string <binary>

Responses

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "fileIdentifier": "string",
  • "dcType": "IMAGE",
  • "createdBy": "string",
  • "createdOn": "1985-04-12T23:20:50.52Z",
  • "originalFilename": "string",
  • "receivedMediaType": "string",
  • "detectedMediaType": "string",
  • "detectedFileExtension": "string",
  • "evaluatedMediaType": "string",
  • "evaluatedFileExtension": "string",
  • "sha1Hex": "string",
  • "bucket": "string",
  • "dateTimeDigitized": "string",
  • "exif": [
    ],
  • "isDerivative": true
}

download Object

Triggers a download of a file. Note that the file requires a metadata entry in the database to be available for download.

path Parameters
bucket
required
string

Namespace of the file described by the metadata

fileId
required
string <uuid>

metadata id to patch

Responses

download Derivative

Triggers a download of a derivative.

path Parameters
bucket
required
string

Namespace of the file described by the metadata

fileId
required
string <uuid>

metadata id to patch

Responses