seventhings customer API (v0.1)

Download OpenAPI specification:Download

Web API for seventhings instance, the fixed asset manager for successful companies.

With the seventhings asset tracking manager you digitize your internal process in no time and boost creativity and structure.

default

Useful routes for a client application.

Ping the API

Default Message that API exists here, no login required.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "description": "seventhings API is ready"
}

Ping the API

Default Message that API exists here, no login required.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "description": "seventhings API is ready"
}

auth

Login and authentication of the API.

/customer-api/v1/auth_token

Request Body schema:
One of
username
required
string non-empty

Your login username for the web app.

password
required
string non-empty

Your secret password.

client_id
required
string

The client_id, request on request

grant_type
any
Value: "password"

Responses

Request samples

Content type
Example
{
  • "summary": "Get new oauth token with username and password",
  • "value": {
    }
}

Response samples

Content type
application/json
{
  • "access_token": "e68f38c2dca2add6c5528e16d7a2b453371e5870",
  • "expires_in": 3600,
  • "token_type": "Bearer",
  • "scope": null,
  • "refresh_token": "2b57a8d37baf1ef3a436968da51149b2eddf7f0f",
  • "user_id": 1
}

Revoke auth tokens

Revokes all auth tokens (refresh and access tokens) for user (identified by bearer token)

Authorizations:
bearerAuth

Responses

objects

Handle objects with the API.

Get all objects.

Get all objects.

Authorizations:
bearerAuth
query Parameters
page
integer <int32> [ 1 .. 1000000 ]
Default: 1

Page number of the results to fetch.

per_page
integer [ 1 .. 1000 ]
Default: 50

The number of results per page.

object (Filter)
Example: filter[<filter_id>]=<filter_name>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

The filter parameter is a deep object, which means that it can have multiple levels of nesting. In the first level there is the field name, in the second level there is the operator and in the third level there are the values or the value. for example: filter[TEXT][eq]='exact searched text'

The exact field name you can find in the field definition list of your customer instance.

The known operators which can be used for one value per field you can find here:

  • eq which is used for exact match
  • neq which is used for the opposite of an exact match
  • gt which is used for a greater than match
  • gt_or_null which is used for a greater than match or null
  • gte which is used for a greater than or equal match
  • gte_or_null which is used for a greater than or equal match or null
  • lt which is used for a less than match
  • lt_or_null which is used for a less than match or null
  • lte which is used for a less than or equal match
  • lte_or_null which is used for a less than or equal match or null

Here is the list of the known operators which can be used for multiple values per field:

  • like which is used for a partial match
  • not_like which is used for a partial mismatch
  • in which is used for a list of exact matches
  • nin which is used for a list of the opposite of exact matches

Here are some examples:

  • filter[TEXT][eq]='exact searched text'
  • filter[TEXT][neq]='exact searched text'
  • filter[TEXT][like][]='searched text'
  • filter[TEXT][not_like][]='searched text'
  • filter[TEXT][in][]='searched text'
  • filter[TEXT][nin][]='searched text'
  • filter[DATE][gt]=2022-11-15
  • filter[DATE][gt_or_null]=2022-11-15
  • filter[DATE][gte]=2022-11-15
  • filter[DATE][gte_or_null]=2022-11-15
  • filter[DATE][lt]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lt_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATETIME][gt]=2022-11-15+00:00:00
  • filter[DATETIME][lt]=2022-11-15+00:00:00&filter[DATETIME][gt]=2022-11-14+00:00:00
object (Sorting)
Example: <sort_field>=<sort_type>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

In actual parameter, FieldKey should be passed (e.g: sort[updated_at]=ASC)

Up to columns

Filter options available for certain type of the field:

  • sort[TEXT]=ASC
  • sort[DATE]=DESC
  • sort[TEXT]=DESC&sort[DATE]=ASC

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get count of all objects.

Get count of all objects.

Authorizations:
bearerAuth
query Parameters
object (Filter)
Example: filter[<filter_id>]=<filter_name>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

The filter parameter is a deep object, which means that it can have multiple levels of nesting. In the first level there is the field name, in the second level there is the operator and in the third level there are the values or the value. for example: filter[TEXT][eq]='exact searched text'

The exact field name you can find in the field definition list of your customer instance.

The known operators which can be used for one value per field you can find here:

  • eq which is used for exact match
  • neq which is used for the opposite of an exact match
  • gt which is used for a greater than match
  • gt_or_null which is used for a greater than match or null
  • gte which is used for a greater than or equal match
  • gte_or_null which is used for a greater than or equal match or null
  • lt which is used for a less than match
  • lt_or_null which is used for a less than match or null
  • lte which is used for a less than or equal match
  • lte_or_null which is used for a less than or equal match or null

Here is the list of the known operators which can be used for multiple values per field:

  • like which is used for a partial match
  • not_like which is used for a partial mismatch
  • in which is used for a list of exact matches
  • nin which is used for a list of the opposite of exact matches

Here are some examples:

  • filter[TEXT][eq]='exact searched text'
  • filter[TEXT][neq]='exact searched text'
  • filter[TEXT][like][]='searched text'
  • filter[TEXT][not_like][]='searched text'
  • filter[TEXT][in][]='searched text'
  • filter[TEXT][nin][]='searched text'
  • filter[DATE][gt]=2022-11-15
  • filter[DATE][gt_or_null]=2022-11-15
  • filter[DATE][gte]=2022-11-15
  • filter[DATE][gte_or_null]=2022-11-15
  • filter[DATE][lt]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lt_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATETIME][gt]=2022-11-15+00:00:00
  • filter[DATETIME][lt]=2022-11-15+00:00:00&filter[DATETIME][gt]=2022-11-14+00:00:00

Responses

Response samples

Content type
application/json
{
  • "count": 0
}

Create a new object.

Create a new object.

Authorizations:
bearerAuth
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Get a single object.

Get a single object.

Authorizations:
bearerAuth
path Parameters
objectUuid
required
string <uuid> (Uuid)

Responses

Response samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Update a single object.

Update a single object.

Authorizations:
bearerAuth
path Parameters
objectUuid
required
string <uuid> (Uuid)
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Response samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Delete a single object.

Delete a single object.

Authorizations:
bearerAuth
path Parameters
objectUuid
required
string <uuid> (Uuid)

Responses

rooms

Handle rooms with the API.

Get all rooms.

Get all rooms.

Authorizations:
bearerAuth
query Parameters
page
integer <int32> [ 1 .. 1000000 ]
Default: 1

Page number of the results to fetch.

per_page
integer [ 1 .. 1000 ]
Default: 50

The number of results per page.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get count of all rooms.

Get count of all rooms.

Authorizations:
bearerAuth
query Parameters
object (Filter)
Example: filter[<filter_id>]=<filter_name>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

The filter parameter is a deep object, which means that it can have multiple levels of nesting. In the first level there is the field name, in the second level there is the operator and in the third level there are the values or the value. for example: filter[TEXT][eq]='exact searched text'

The exact field name you can find in the field definition list of your customer instance.

The known operators which can be used for one value per field you can find here:

  • eq which is used for exact match
  • neq which is used for the opposite of an exact match
  • gt which is used for a greater than match
  • gt_or_null which is used for a greater than match or null
  • gte which is used for a greater than or equal match
  • gte_or_null which is used for a greater than or equal match or null
  • lt which is used for a less than match
  • lt_or_null which is used for a less than match or null
  • lte which is used for a less than or equal match
  • lte_or_null which is used for a less than or equal match or null

Here is the list of the known operators which can be used for multiple values per field:

  • like which is used for a partial match
  • not_like which is used for a partial mismatch
  • in which is used for a list of exact matches
  • nin which is used for a list of the opposite of exact matches

Here are some examples:

  • filter[TEXT][eq]='exact searched text'
  • filter[TEXT][neq]='exact searched text'
  • filter[TEXT][like][]='searched text'
  • filter[TEXT][not_like][]='searched text'
  • filter[TEXT][in][]='searched text'
  • filter[TEXT][nin][]='searched text'
  • filter[DATE][gt]=2022-11-15
  • filter[DATE][gt_or_null]=2022-11-15
  • filter[DATE][gte]=2022-11-15
  • filter[DATE][gte_or_null]=2022-11-15
  • filter[DATE][lt]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lt_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATETIME][gt]=2022-11-15+00:00:00
  • filter[DATETIME][lt]=2022-11-15+00:00:00&filter[DATETIME][gt]=2022-11-14+00:00:00

Responses

Response samples

Content type
application/json
{
  • "count": 0
}

Create a new room.

Create a new room.

Authorizations:
bearerAuth
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Get room.

Get room.

Authorizations:
bearerAuth
path Parameters
roomUuid
required
string <uuid> (Uuid)

Responses

Response samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Update room.

Update room.

Authorizations:
bearerAuth
path Parameters
roomUuid
required
string <uuid> (Uuid)
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Response samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Delete room.

Delete room.

Authorizations:
bearerAuth
path Parameters
roomUuid
required
string <uuid> (Uuid)

Responses

locations

Handle locations with the API.

Get all locations.

Get all locations.

Authorizations:
bearerAuth
query Parameters
page
integer <int32> [ 1 .. 1000000 ]
Default: 1

Page number of the results to fetch.

per_page
integer [ 1 .. 1000 ]
Default: 50

The number of results per page.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get count of all locations.

Get count of all locations.

Authorizations:
bearerAuth
query Parameters
object (Filter)
Example: filter[<filter_id>]=<filter_name>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

The filter parameter is a deep object, which means that it can have multiple levels of nesting. In the first level there is the field name, in the second level there is the operator and in the third level there are the values or the value. for example: filter[TEXT][eq]='exact searched text'

The exact field name you can find in the field definition list of your customer instance.

The known operators which can be used for one value per field you can find here:

  • eq which is used for exact match
  • neq which is used for the opposite of an exact match
  • gt which is used for a greater than match
  • gt_or_null which is used for a greater than match or null
  • gte which is used for a greater than or equal match
  • gte_or_null which is used for a greater than or equal match or null
  • lt which is used for a less than match
  • lt_or_null which is used for a less than match or null
  • lte which is used for a less than or equal match
  • lte_or_null which is used for a less than or equal match or null

Here is the list of the known operators which can be used for multiple values per field:

  • like which is used for a partial match
  • not_like which is used for a partial mismatch
  • in which is used for a list of exact matches
  • nin which is used for a list of the opposite of exact matches

Here are some examples:

  • filter[TEXT][eq]='exact searched text'
  • filter[TEXT][neq]='exact searched text'
  • filter[TEXT][like][]='searched text'
  • filter[TEXT][not_like][]='searched text'
  • filter[TEXT][in][]='searched text'
  • filter[TEXT][nin][]='searched text'
  • filter[DATE][gt]=2022-11-15
  • filter[DATE][gt_or_null]=2022-11-15
  • filter[DATE][gte]=2022-11-15
  • filter[DATE][gte_or_null]=2022-11-15
  • filter[DATE][lt]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lt_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATETIME][gt]=2022-11-15+00:00:00
  • filter[DATETIME][lt]=2022-11-15+00:00:00&filter[DATETIME][gt]=2022-11-14+00:00:00

Responses

Response samples

Content type
application/json
{
  • "count": 0
}

Create a new location.

Create a new location.

Authorizations:
bearerAuth
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Get location.

Get location.

Authorizations:
bearerAuth
path Parameters
locationUuid
required
string <uuid> (Uuid)

Responses

Response samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Update location.

Update location.

Authorizations:
bearerAuth
path Parameters
locationUuid
required
string <uuid> (Uuid)
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Response samples

Content type
application/json
{
  • "<field_key_1>": "<field_value_1>",
  • "<field_key_2>": "<field_value_2>",
  • "<field_key_3>": "<field_value_3>"
}

Delete location.

Delete location.

Authorizations:
bearerAuth
path Parameters
locationUuid
required
string <uuid> (Uuid)

Responses

user

Get user list.

Get the information about the users.

Authorizations:
bearerAuth
query Parameters
page
integer <int32> [ 1 .. 10000 ]
Default: 1
Example: page=1

Page number

per_page
integer <int32> [ 1 .. 1000 ]
Default: 50
Example: per_page=50

Number of items per page

sort_by
string
Default: "id"
Enum: "id" "email"
Example: sort_by=id

Sort by

order
string
Default: "asc"
Enum: "asc" "ASC" "desc" "DESC"
Example: order=asc

Sort order direction

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "page": 1,
  • "per_page": 50,
  • "sort_by": "id",
  • "order": "asc",
  • "total": 0
}

Get user by uuid.

Get the information about the user by uuid.

Authorizations:
bearerAuth
path Parameters
userUuid
required
string <uuid> (Uuid)

Responses

Response samples

Content type
application/json
{
  • "uuid": "f9f9f9f9-f9f9f9-f9f9f9-f9f9f9f9f9f9",
  • "id": 9007199254740992,
  • "email": "user@example.com",
  • "firstname": "Max",
  • "lastname": "Miller",
  • "display_name": [
    ]
}

Get user by id.

Get the information about the user by integer id.

Authorizations:
bearerAuth
path Parameters
userId
required
integer (UserId) [ 0 .. 9007199254740992 ]

Responses

Response samples

Content type
application/json
{
  • "uuid": "f9f9f9f9-f9f9f9-f9f9f9-f9f9f9f9f9f9",
  • "id": 9007199254740992,
  • "email": "user@example.com",
  • "firstname": "Max",
  • "lastname": "Miller",
  • "display_name": [
    ]
}

task management

Get a list of Tasks

Get a list of Tasks.

Authorizations:
bearerAuth
query Parameters
status
string (TaskStatus)
Enum: "open" "closed"
Example: status=closed

Filter Tasks by status

deadline_from
string <date>
Example: deadline_from=2023-04-01

Filter Tasks by deadline from date

deadline_to
string <date>
Example: deadline_to=2023-05-01

Filter Tasks by deadline to date

assignee
string <uuid>

Filter Tasks by assignee

author
string <uuid>

Filter Tasks by author

reference_type
string (TaskReferenceType)
Value: "asset"
Example: reference_type=asset

Filter Tasks by reference type

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a new Task

Create a new Task.

Authorizations:
bearerAuth
Request Body schema: application/json

Task to be created

title
required
string

The title of the task.

comment
string or null

A comment that is displayed in the task details.

deadline
required
string <date>

The date and time of the deadline.

required
Array of objects (TaskTimeInterval) [ 1 .. 2 ] items
required
object or null

A time interval that is used to trigger a task.

assignees
required
Array of strings <uuid> = 1 items
required
object (TaskReference)

The reference of the task.

attachments
Array of strings <uuid> >= 0 items
notify
boolean

Responses

Request samples

Content type
application/json
{
  • "title": "Refill the printer.",
  • "comment": "The printer is running low on ink.",
  • "deadline": "2022-04-01",
  • "reminders": [
    ],
  • "recurring_schedule": {
    },
  • "assignees": [
    ],
  • "reference": {
    },
  • "attachments": [
    ],
  • "notify": true
}

Get a Task

Get a Task.

Authorizations:
bearerAuth
path Parameters
taskUuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "uuid": "a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11",
  • "status": "closed",
  • "author": "a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11",
  • "title": "Refill the printer.",
  • "comment": "The printer is running low on ink.",
  • "deadline": "2022-04-01",
  • "reminders": [
    ],
  • "recurring_schedule": {
    },
  • "assignees": [
    ],
  • "reference": {
    },
  • "attachments": [
    ]
}

Update a Task

Update a Task.

Authorizations:
bearerAuth
path Parameters
taskUuid
required
string <uuid>
Request Body schema: application/json

Task to be updated

title
required
string

The title of the task.

comment
string or null

A comment that is displayed in the task details.

deadline
required
string <date>

The date and time of the deadline.

required
Array of objects (TaskTimeInterval) [ 1 .. 2 ] items
required
object or null

A time interval that is used to trigger a task.

assignees
required
Array of strings <uuid> = 1 items
required
object (TaskReference)

The reference of the task.

attachments
Array of strings <uuid> >= 0 items
notify
boolean
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "title": "Refill the printer.",
  • "comment": "The printer is running low on ink.",
  • "deadline": "2022-04-01",
  • "reminders": [
    ],
  • "recurring_schedule": {
    },
  • "assignees": [
    ],
  • "reference": {
    },
  • "attachments": [
    ],
  • "notify": true
}

Delete a Task

Delete a Task.

Authorizations:
bearerAuth
path Parameters
taskUuid
required
string <uuid>

Responses

Update a Task status

Update a Task status.

Authorizations:
bearerAuth
path Parameters
taskUuid
required
string <uuid>
Request Body schema: application/json

Task status

status
string (TaskStatus)
Enum: "open" "closed"

The type of the referenced object.

Responses

Request samples

Content type
application/json
{
  • "status": "closed"
}

field definition

Get all field definitions of a specific template.

Get all field definitions of a specific template.

Authorizations:
bearerAuth
path Parameters
template
required
any (AssetTrackingTemplate)
Enum: "asset" "room"
Example: room

The template to get the field definitions for.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a new field definition for a specific template.

Create a new field definition for a specific template.

Authorizations:
bearerAuth
path Parameters
template
required
any (AssetTrackingTemplate)
Enum: "asset" "room"
Example: room

The template to get the field definitions for.

Request Body schema: application/json
required
FieldTypeAttachment (object) or FieldTypeBarcode (object) or FieldTypeBoolean (object) or FieldTypeDate (object) or FieldTypeDateTime (object) or FieldTypeDecimal (object) or FieldTypeDropdown (object) or FieldTypeFieldValueComparison (object) or FieldTypeLink (object) or FieldTypeLinkedAssets (object) or FieldTypeLinkedLocation (object) or FieldTypeLinkedRoom (object) or FieldTypeLinkedUser (object) or FieldTypeLongText (object) or FieldTypeMoney (object) or FieldTypeNumber (object) or FieldTypeReminder (object) or FieldTypeText (object) (FieldDefinitionFieldType)
label
required
string (FieldDefinitionLabel)

The label or translation key of the field

comment
string (FieldDefinitionComment)

The comment of the field

required
(boolean or null) or (number or null) or (string or null) (FieldDefinitionDefaultValue)

The default value of the field

required
Array of booleans or numbers or strings or null (FieldDefinitionPossibleValues)

The possible values of the field

required
Array of FieldAttributeFormGroup (object) or FieldAttributeEditable (object) or FieldAttributeInternal (object) or FieldAttributeMandatory (object) or FieldAttributeMutable (object) or FieldAttributeSystem (object) or FieldAttributeVisible (object) or FieldAttributePreselected (object) or FieldAttributeIndexed (object) or FieldAttributeFormatted (object) or FieldAttributeSorted (object) or FieldAttributeCurrencyCode (object) or FieldAttributeFractionDigits (object) or FieldAttributeNameComponent (object) or FieldAttributeExposed (object) (FieldDefinitionAttributes)

The attributes of the field

required
Array of FieldRelationActualField (object) or FieldRelationExpectedField (object) or FieldRelationActiveWhenValueEqualsOneOf (object) or null (FieldDefinitionRelations)

The relations of the field

Responses

Request samples

Content type
application/json
{
  • "field_type": {
    },
  • "label": "general_information",
  • "comment": "Additional info about the field",
  • "default_value": true,
  • "possible_values": [
    ],
  • "attributes": [
    ],
  • "relations": [
    ]
}

Get a field definition for a specific template.

Get a field definition for a specific template.

Authorizations:
bearerAuth
path Parameters
template
required
any (AssetTrackingTemplate)
Enum: "asset" "room"
Example: room

The template to get the field definitions for.

fieldDefinitionUuid
required
string <uuid> (Uuid)

The UUID of the field definition to get.

Responses

Response samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "field_key": "string",
  • "field_type": {
    },
  • "label": "general_information",
  • "comment": "Additional info about the field",
  • "default_value": true,
  • "possible_values": [
    ],
  • "attributes": [
    ],
  • "relations": [
    ]
}

Update a field definition for a specific template.

Update a field definition for a specific template.

Authorizations:
bearerAuth
path Parameters
template
required
any (AssetTrackingTemplate)
Enum: "asset" "room"
Example: room

The template to get the field definitions for.

fieldDefinitionUuid
required
string <uuid> (Uuid)

The UUID of the field definition to get.

Request Body schema: application/json
uuid
required
string <uuid> (Uuid)
field_key
required
string (FieldDefinitionFieldKey) [ 1 .. 64 ] characters

The key of the field

required
FieldTypeAttachment (object) or FieldTypeBarcode (object) or FieldTypeBoolean (object) or FieldTypeDate (object) or FieldTypeDateTime (object) or FieldTypeDecimal (object) or FieldTypeDropdown (object) or FieldTypeFieldValueComparison (object) or FieldTypeLink (object) or FieldTypeLinkedAssets (object) or FieldTypeLinkedLocation (object) or FieldTypeLinkedRoom (object) or FieldTypeLinkedUser (object) or FieldTypeLongText (object) or FieldTypeMoney (object) or FieldTypeNumber (object) or FieldTypeReminder (object) or FieldTypeText (object) (FieldDefinitionFieldType)
label
required
string (FieldDefinitionLabel)

The label or translation key of the field

comment
string (FieldDefinitionComment)

The comment of the field

(boolean or null) or (number or null) or (string or null) (FieldDefinitionDefaultValue)

The default value of the field

Array of booleans or numbers or strings or null (FieldDefinitionPossibleValues)

The possible values of the field

required
Array of FieldAttributeFormGroup (object) or FieldAttributeEditable (object) or FieldAttributeInternal (object) or FieldAttributeMandatory (object) or FieldAttributeMutable (object) or FieldAttributeSystem (object) or FieldAttributeVisible (object) or FieldAttributePreselected (object) or FieldAttributeIndexed (object) or FieldAttributeFormatted (object) or FieldAttributeSorted (object) or FieldAttributeCurrencyCode (object) or FieldAttributeFractionDigits (object) or FieldAttributeNameComponent (object) or FieldAttributeExposed (object) (FieldDefinitionAttributes)

The attributes of the field

required
Array of FieldRelationActualField (object) or FieldRelationExpectedField (object) or FieldRelationActiveWhenValueEqualsOneOf (object) or null (FieldDefinitionRelations)

The relations of the field

Responses

Request samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "field_key": "string",
  • "field_type": {
    },
  • "label": "general_information",
  • "comment": "Additional info about the field",
  • "default_value": true,
  • "possible_values": [
    ],
  • "attributes": [
    ],
  • "relations": [
    ]
}

files

Get a list of file resources

Get a list of file resources - available only for superuser.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[]

Create a new file resource

Create a new file resource

Authorizations:
bearerAuth
Request Body schema: multipart/form-data
data
required
string <binary> (FileData)

Responses

Get a file resource

Get a file resource

Authorizations:
bearerAuth
path Parameters
fileUuid
required
string <uuid> (Uuid)

Responses

Response samples

Content type
application/json
{}

Get a file resource data

Get a file resource data

Authorizations:
bearerAuth
path Parameters
fileUuid
required
string <uuid> (Uuid)

Responses

Get a file resource thumbnail

Get a file resource thumbnail

Authorizations:
bearerAuth
path Parameters
fileUuid
required
string <uuid> (Uuid)

Responses

circularity-hub

Suggest the chub-category of given objects.

Suggest the chub-category of given objects.

Authorizations:
bearerAuth
Request Body schema: application/json
object (Filter)

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

The filter parameter is a deep object, which means that it can have multiple levels of nesting. In the first level there is the field name, in the second level there is the operator and in the third level there are the values or the value. for example: filter[TEXT][eq]='exact searched text'

The exact field name you can find in the field definition list of your customer instance.

The known operators which can be used for one value per field you can find here:

  • eq which is used for exact match
  • neq which is used for the opposite of an exact match
  • gt which is used for a greater than match
  • gt_or_null which is used for a greater than match or null
  • gte which is used for a greater than or equal match
  • gte_or_null which is used for a greater than or equal match or null
  • lt which is used for a less than match
  • lt_or_null which is used for a less than match or null
  • lte which is used for a less than or equal match
  • lte_or_null which is used for a less than or equal match or null

Here is the list of the known operators which can be used for multiple values per field:

  • like which is used for a partial match
  • not_like which is used for a partial mismatch
  • in which is used for a list of exact matches
  • nin which is used for a list of the opposite of exact matches

Here are some examples:

  • filter[TEXT][eq]='exact searched text'
  • filter[TEXT][neq]='exact searched text'
  • filter[TEXT][like][]='searched text'
  • filter[TEXT][not_like][]='searched text'
  • filter[TEXT][in][]='searched text'
  • filter[TEXT][nin][]='searched text'
  • filter[DATE][gt]=2022-11-15
  • filter[DATE][gt_or_null]=2022-11-15
  • filter[DATE][gte]=2022-11-15
  • filter[DATE][gte_or_null]=2022-11-15
  • filter[DATE][lt]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lt_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATETIME][gt]=2022-11-15+00:00:00
  • filter[DATETIME][lt]=2022-11-15+00:00:00&filter[DATETIME][gt]=2022-11-14+00:00:00
object (Sorting)

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

In actual parameter, FieldKey should be passed (e.g: sort[updated_at]=ASC)

Up to columns

Filter options available for certain type of the field:

  • sort[TEXT]=ASC
  • sort[DATE]=DESC
  • sort[TEXT]=DESC&sort[DATE]=ASC

Responses

Request samples

Content type
application/json
{
  • "filter": {
    },
  • "sort": {
    }
}

Response samples

Content type
application/json
{
  • "<object_uuid>": "<mapped_category>"
}

Suggested or set price of given objects.

Suggested or set price of given objects.

Authorizations:
bearerAuth
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "<object_uuid>": "<mapped_category>"
}

Response samples

Content type
application/json
{
  • "<object_uuid>": "<rest_price_value>"
}

Add object to circularity-hub.

Add object to circularity-hub.

Authorizations:
bearerAuth
Request Body schema: application/json
additional property
object (PriceAndCategoryMapData)

Given category and price

Responses

Request samples

Content type
application/json
{
  • "e8907bf9-90b3-4ea4-998c-242fab57d6a7": {
    }
}

Get all items from circularity-hub.

Get all items from circularity-hub.

Authorizations:
bearerAuth
query Parameters
page
integer <int32> [ 1 .. 1000000 ]
Default: 1

Page number of the results to fetch.

per_page
integer [ 1 .. 1000 ]
Default: 50

The number of results per page.

object (Filter)
Example: filter[<filter_id>]=<filter_name>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

The filter parameter is a deep object, which means that it can have multiple levels of nesting. In the first level there is the field name, in the second level there is the operator and in the third level there are the values or the value. for example: filter[TEXT][eq]='exact searched text'

The exact field name you can find in the field definition list of your customer instance.

The known operators which can be used for one value per field you can find here:

  • eq which is used for exact match
  • neq which is used for the opposite of an exact match
  • gt which is used for a greater than match
  • gt_or_null which is used for a greater than match or null
  • gte which is used for a greater than or equal match
  • gte_or_null which is used for a greater than or equal match or null
  • lt which is used for a less than match
  • lt_or_null which is used for a less than match or null
  • lte which is used for a less than or equal match
  • lte_or_null which is used for a less than or equal match or null

Here is the list of the known operators which can be used for multiple values per field:

  • like which is used for a partial match
  • not_like which is used for a partial mismatch
  • in which is used for a list of exact matches
  • nin which is used for a list of the opposite of exact matches

Here are some examples:

  • filter[TEXT][eq]='exact searched text'
  • filter[TEXT][neq]='exact searched text'
  • filter[TEXT][like][]='searched text'
  • filter[TEXT][not_like][]='searched text'
  • filter[TEXT][in][]='searched text'
  • filter[TEXT][nin][]='searched text'
  • filter[DATE][gt]=2022-11-15
  • filter[DATE][gt_or_null]=2022-11-15
  • filter[DATE][gte]=2022-11-15
  • filter[DATE][gte_or_null]=2022-11-15
  • filter[DATE][lt]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lt_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATETIME][gt]=2022-11-15+00:00:00
  • filter[DATETIME][lt]=2022-11-15+00:00:00&filter[DATETIME][gt]=2022-11-14+00:00:00
object (Sorting)
Example: <sort_field>=<sort_type>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

In actual parameter, FieldKey should be passed (e.g: sort[updated_at]=ASC)

Up to columns

Filter options available for certain type of the field:

  • sort[TEXT]=ASC
  • sort[DATE]=DESC
  • sort[TEXT]=DESC&sort[DATE]=ASC

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get one item from circularity-hub.

Get one item from circularity-hub.

Authorizations:
bearerAuth
path Parameters
identifier
required
integer

Responses

Response samples

Content type
application/json
{
  • "id": 1,
  • "deleted": 0,
  • "asset_id": 2,
  • "created_at": "2024-05-13 13:30:18",
  • "price": 123,
  • "category_id": 2,
  • "suggested_price": 2244.82,
  • "updated_at": "2024-05-13 13:30:18"
}

Delete one item.

Delete one item-

Authorizations:
bearerAuth
path Parameters
identifier
required
integer

Responses

Update one item.

Update one item-

Authorizations:
bearerAuth
path Parameters
identifier
required
integer
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "price": 123
}

Get all orders from circularity-hub.

Get all orders from circularity-hub.

Authorizations:
bearerAuth
query Parameters
page
integer <int32> [ 1 .. 1000000 ]
Default: 1

Page number of the results to fetch.

per_page
integer [ 1 .. 1000 ]
Default: 50

The number of results per page.

object (Filter)
Example: filter[<filter_id>]=<filter_name>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

The filter parameter is a deep object, which means that it can have multiple levels of nesting. In the first level there is the field name, in the second level there is the operator and in the third level there are the values or the value. for example: filter[TEXT][eq]='exact searched text'

The exact field name you can find in the field definition list of your customer instance.

The known operators which can be used for one value per field you can find here:

  • eq which is used for exact match
  • neq which is used for the opposite of an exact match
  • gt which is used for a greater than match
  • gt_or_null which is used for a greater than match or null
  • gte which is used for a greater than or equal match
  • gte_or_null which is used for a greater than or equal match or null
  • lt which is used for a less than match
  • lt_or_null which is used for a less than match or null
  • lte which is used for a less than or equal match
  • lte_or_null which is used for a less than or equal match or null

Here is the list of the known operators which can be used for multiple values per field:

  • like which is used for a partial match
  • not_like which is used for a partial mismatch
  • in which is used for a list of exact matches
  • nin which is used for a list of the opposite of exact matches

Here are some examples:

  • filter[TEXT][eq]='exact searched text'
  • filter[TEXT][neq]='exact searched text'
  • filter[TEXT][like][]='searched text'
  • filter[TEXT][not_like][]='searched text'
  • filter[TEXT][in][]='searched text'
  • filter[TEXT][nin][]='searched text'
  • filter[DATE][gt]=2022-11-15
  • filter[DATE][gt_or_null]=2022-11-15
  • filter[DATE][gte]=2022-11-15
  • filter[DATE][gte_or_null]=2022-11-15
  • filter[DATE][lt]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lt_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATE][lte_or_null]=2022-11-15&filter[DATE][gt]=2022-11-14
  • filter[DATETIME][gt]=2022-11-15+00:00:00
  • filter[DATETIME][lt]=2022-11-15+00:00:00&filter[DATETIME][gt]=2022-11-14+00:00:00
object (Sorting)
Example: <sort_field>=<sort_type>

Fields are defined in Template, so this examples are based on the type of the field, not on the FieldKey

In actual parameter, FieldKey should be passed (e.g: sort[updated_at]=ASC)

Up to columns

Filter options available for certain type of the field:

  • sort[TEXT]=ASC
  • sort[DATE]=DESC
  • sort[TEXT]=DESC&sort[DATE]=ASC

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create order and checkout items from circularity-hub.

Create order and checkout items from circularity-hub.

Authorizations:
bearerAuth
Request Body schema: application/json
Array
integer

Responses

Request samples

Content type
application/json
[
  • 0
]

Get one order from circularity-hub.

Get one order from circularity-hub.

Authorizations:
bearerAuth
path Parameters
identifier
required
integer

Responses

Response samples

Content type
application/json
{
  • "id": 1,
  • "order_number": "7THX-24-4570-61",
  • "created_at": "2024-05-29 13:02:20",
  • "user_id": 1,
  • "total_price": 152.56,
  • "completed": false,
  • "cancelled": true,
  • "cancellation_reason": "have to cancel because of problems",
  • "billing_data": {
    },
  • "articles": [
    ]
}

Update one order.

Update one order.

Authorizations:
bearerAuth
path Parameters
identifier
required
integer
Request Body schema: application/json
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "completed": true,
  • "cancelled": true,
  • "cancellation_reason": "Item could not be found any more"
}