VisTab API (0.1.0)

Download OpenAPI specification:Download

This documentation outlines the resources comprising the official API of VisTab. For assistance or inquiries, please reach out to our support team.

Person

Add, update and retrieve people.

Get People

Get all people that belong to the client.

query Parameters
page
integer >= 0
Default: 0

Zero-based page index (0..N)

size
integer >= 1
Default: 20

The size of the page to be returned

sort
Array of strings

Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.

clientId
integer <int64>

Responses

Update/Add People

For each person in the list, update it if it exists (based on ID or person uniqueness criteria), otherwise add it. When updating, this method overwrites all non-null fields except the ID.

Request Body schema: application/json
required
Array
uuid
string <uuid>
name
string (Name of Person) [ 1 .. 128 ] characters

This is a required field when adding a new person. For updating, it's optional.

statusId
integer <int32> (Record Status) [ 0 .. 1 ]

Value is either 1 (active) or 0 (inactive). Explicitly set this value to 0 to deactivate a person, or 1 to reactivate it. This value defaults to 1 or active for newly added people.

dateOfBirth
string <date> (Date of Birth)

Should be in YYYY-MM-DD format and a past date.

phoneNumber
string (Phone Number)
email
string (Email Address)
companyName
string (Company Name) [ 0 .. 128 ] characters
receiveNotifications
boolean (Receive Notifications)
categories
Array of strings (Categories)

List of categories to assign to the person. Could either be the categories' names or IDs.

sites
Array of strings (Assigned Sites)

List of sites the person is assigned to. Could either be the sites' names or IDs.

Array of objects (Extra Details)

List of extra details for the person.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Add People

Add a list of people.

Request Body schema: application/json
required
Array
uuid
string <uuid>
name
string (Name of Person) [ 1 .. 128 ] characters

This is a required field when adding a new person. For updating, it's optional.

statusId
integer <int32> (Record Status) [ 0 .. 1 ]

Value is either 1 (active) or 0 (inactive). Explicitly set this value to 0 to deactivate a person, or 1 to reactivate it. This value defaults to 1 or active for newly added people.

dateOfBirth
string <date> (Date of Birth)

Should be in YYYY-MM-DD format and a past date.

phoneNumber
string (Phone Number)
email
string (Email Address)
companyName
string (Company Name) [ 0 .. 128 ] characters
receiveNotifications
boolean (Receive Notifications)
categories
Array of strings (Categories)

List of categories to assign to the person. Could either be the categories' names or IDs.

sites
Array of strings (Assigned Sites)

List of sites the person is assigned to. Could either be the sites' names or IDs.

Array of objects (Extra Details)

List of extra details for the person.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Get Person

Get person by ID (UUID).

path Parameters
id
required
string <uuid>
query Parameters
clientId
integer <int64>

Responses

Update Person

Update a person. Overwrites all non-null fields except the ID.

path Parameters
id
required
string <uuid>
Request Body schema: application/json
required
uuid
string <uuid>
name
string (Name of Person) [ 1 .. 128 ] characters

This is a required field when adding a new person. For updating, it's optional.

statusId
integer <int32> (Record Status) [ 0 .. 1 ]

Value is either 1 (active) or 0 (inactive). Explicitly set this value to 0 to deactivate a person, or 1 to reactivate it. This value defaults to 1 or active for newly added people.

dateOfBirth
string <date> (Date of Birth)

Should be in YYYY-MM-DD format and a past date.

phoneNumber
string (Phone Number)
email
string (Email Address)
companyName
string (Company Name) [ 0 .. 128 ] characters
receiveNotifications
boolean (Receive Notifications)
categories
Array of strings (Categories)

List of categories to assign to the person. Could either be the categories' names or IDs.

sites
Array of strings (Assigned Sites)

List of sites the person is assigned to. Could either be the sites' names or IDs.

Array of objects (Extra Details)

List of extra details for the person.

Responses

Request samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "name": "string",
  • "statusId": 1,
  • "dateOfBirth": "2019-08-24",
  • "phoneNumber": "string",
  • "email": "string",
  • "companyName": "string",
  • "receiveNotifications": true,
  • "categories": [
    ],
  • "sites": [
    ],
  • "extras": [
    ]
}

Synchronise people

Overwrites people in the system. Within the provided categories, only people in the request with active status ID (1) will remain active after this operation.

query Parameters
clientId
integer <int64>
Request Body schema: application/json
required
Array
uuid
string <uuid>
name
string (Name of Person) [ 1 .. 128 ] characters

This is a required field when adding a new person. For updating, it's optional.

statusId
integer <int32> (Record Status) [ 0 .. 1 ]

Value is either 1 (active) or 0 (inactive). Explicitly set this value to 0 to deactivate a person, or 1 to reactivate it. This value defaults to 1 or active for newly added people.

dateOfBirth
string <date> (Date of Birth)

Should be in YYYY-MM-DD format and a past date.

phoneNumber
string (Phone Number)
email
string (Email Address)
companyName
string (Company Name) [ 0 .. 128 ] characters
receiveNotifications
boolean (Receive Notifications)
categories
Array of strings (Categories)

List of categories to assign to the person. Could either be the categories' names or IDs.

sites
Array of strings (Assigned Sites)

List of sites the person is assigned to. Could either be the sites' names or IDs.

Array of objects (Extra Details)

List of extra details for the person.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Assign Sites

Request Body schema: application/json
required
Array
uuid
required
string <uuid>
values
required
Array of strings unique
assignmentType
required
string
Enum: "OVERWRITE" "APPEND" "REMOVE"

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Authentication

Get authenticated and use the token to access the API operations.

Refresh

Renew access and refresh token in order to get refresh access to the API operations.

cookie Parameters
vistab_refresh_token
required
string

Responses

Log In

Obtain access and refresh tokens in order to get access to the API operations.

header Parameters
User-Agent
string
X-Forwarded-Host
string
Request Body schema: application/json
required
username
required
string [ 0 .. 128 ] characters
password
required
string

Responses

Request samples

Content type
application/json
{
  • "username": "string",
  • "password": "string"
}