# Project controller (/project) - Read

The project controller contains many endpoints related to projects, which is where all data is stored. The endpoints are divided in five groups:

  • General
    Get information about available projects and tables within projects, and run a basic check of access and system status.

  • Users
    Manage users that are members of a project.

  • Read
    Read user data from tables.

  • Write
    Create, update or delete user data in tables.

  • Watch
    Watch for changes of user data in tables, and for changes of project members.

# All project endpoints

Below are all endpoints in the entire project controller in alphabetical order. Endpoints in the current group are in bold.

/project/list (GET)
/project/list/all (GET)
/project/{project}/check (GET)
/project/{project}/subjects/watch/register (POST)
/project/{project}/subjects/watch/unregister/{id} (POST)
/project/{project}/subjects/watch/{id} (GET)
/project/{project}/table/{table} (GET)
/project/{project}/table/{table} (POST)
/project/{project}/table/{table} (DELETE)
/project/{project}/table/{table}/filter/delete (POST)
/project/{project}/table/{table}/filter/get (POST)
/project/{project}/table/{table}/filter/get/first (POST)
/project/{project}/table/{table}/filter/get/last (POST)
/project/{project}/table/{table}/first (GET)
/project/{project}/table/{table}/last (GET)
/project/{project}/table/{table}/purge (DELETE)
/project/{project}/table/{table}/spec (GET)
/project/{project}/table/{table}/watch/register (POST)
/project/{project}/table/{table}/watch/unregister/{id} (POST)
/project/{project}/table/{table}/watch/{id} (GET)
/project/{project}/table/{table}/{recordId} (GET)
/project/{project}/table/{table}/{recordId} (PUT)
/project/{project}/table/{table}/{recordId} (DELETE)
/project/{project}/tables (GET)
/project/{project}/user (POST)
/project/{project}/user (DELETE)
/project/{project}/users (GET)

# /{project}/table/{table} (GET)

/project/{project}/table/{table} GET
Description
Returns records from the specified table in a project. The records will be sorted by “utcTime”, “localTime” or “id”, depending on what fields are available in the table.

If the table has a field “utcTime” or “localTime”, you can filter records with a start and end time, or a start and end date.

You can specify a date/time as:

  • An ISO date/time with a time zone: 2015-09-20T00:00:00.000+02:00
    It will filter on “utcTime” if it exists. Otherwise it filters on “localTime” and ignores the time zone.
  • An ISO date/time without a time zone: 2015-09-20T00:00:00.000
    It will filter on “localTime”.
  • A date: 2015-09-20
    It will filter on “localTime”.
  • A UNIX time in milliseconds: 1442700000000
    It will filter on “utcTime” if it exists. Otherwise it will convert the unix time to a local time in time zone UTC, and then filter on “localTime”.

If the table does not have a time field, then the start and end parameters are ignored.

Authorization
Users need to have access to the specified project. Admins can access all projects.
All users can access their own data within a project that they can access, and data to which they were granted access with

/access/project/{project}

.
Patients can only access their own data.
Professionals can access the data of users to whom they were granted access. Admins can access all data.
URL parameters
{project}
Project code (see

/project/list

)
{table}
Name of the table (see

/project/{project}/tables

)
user
(optional) User ID of the user whose data should be returned. Omit or leave empty to read your own data.
start
(optional) Start date/time of the records to return (inclusive). Omit or leave empty to receive data from the start.
end
(optional) End date/time of the records to return (exclusive). Omit or leave empty to receive data till the end.
Content
Response (application/json)
JSON array with records. Each record is a JSON object. The properties depend on the type of records that are stored in the table. It will have at least these properties:
id
UUID
user
User ID
Records with a local time, also have this property:
localTime
Local time, formatted as 2015-09-20T00:00:00.000
Records with a UTC time, also have these properties:
utcTime
UNIX time in milliseconds
timezone
Time zone as a location-based identifier from the tz database. For example: Europe/Amsterdam.
Example
Request (filter by time on utcTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000+02:00
    &end=2015-09-21T00:00:00.000+02:00
X-Auth-Token: ...
Request (filter by time on localTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000
    &end=2015-09-21T00:00:00.000
X-Auth-Token: ...
Request (filter by date on localTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20
    &end=2015-09-21
X-Auth-Token: ...
Response
[
    {
        "id": "69a4588f14ba4c989e83dd67ea6e4350",
        "user": "b43f784d76c44e7a9ae0370b91521753",
        "utcTime": 1442736900000,
        "timezone": "Europe/Amsterdam",
        "localTime": "2015-09-20T10:15:00.000",
        "value": 947
    },
    ...
]

# /{project}/table/{table}/filter/get

/project/{project}/table/{table}/filter/get POST
Description
Returns records from the specified table in a project. In contrast to

/project/{project}/table/{table}

, this endpoint can take a custom filter, sort and limit in the request content. They can operate on other columns than user and time.
If you do not specify a custom sort, the records will be sorted by “utcTime”, “localTime” or “id”, depending on what fields are available in the table.

If the table has a field “utcTime” or “localTime”, you can filter records with a start and end time, or a start and end date.

You can specify a date/time as:

  • An ISO date/time with a time zone: 2015-09-20T00:00:00.000+02:00
    It will filter on “utcTime” if it exists. Otherwise it filters on “localTime” and ignores the time zone.
  • An ISO date/time without a time zone: 2015-09-20T00:00:00.000
    It will filter on “localTime”.
  • A date: 2015-09-20
    It will filter on “localTime”.
  • A UNIX time in milliseconds: 1442700000000
    It will filter on “utcTime” if it exists. Otherwise it will convert the unix time to a local time in time zone UTC, and then filter on “localTime”.

If the table does not have a time field, then the start and end parameters are ignored.

Authorization
Users need to have access to the specified project. Admins can access all projects.
All users can access their own data within a project that they can access, and data to which they were granted access with

/access/project/{project}

.
Patients can only access their own data.
Professionals can access the data of users to whom they were granted access.
Admins can access all data.
URL parameters
{project}
Project code (see

/project/list

)
{table}
Name of the table (see

/project/{project}/tables

)
user
(optional) User ID of the user whose data should be returned. Omit or leave empty to read your own data.
start
(optional) Start date/time of the records to return (inclusive). Omit or leave empty to receive data from the start.
end
(optional) End date/time of the records to return (exclusive). Omit or leave empty to receive data till the end.
Content
The content can be empty or a JSON object with properties ‘filter’, ‘sort’ and ‘limit’. Any of these properties can be omitted or set to null.

Filter

A filter is a JSON object with one key/value pair. Possible keys:

$and
JSON list with filters
$or
JSON list with filters
<field name>
a value filter (see below)

A value filter for equality is a simple string or numeric value (matching the field type).
A value filter for other comparisons is a JSON object with one key/value pair. The value is again a simple string or numeric value. The key is one of:

$ne
not equal
$lt
less than
$gt
greater than
$le
less or equal
$ge
greater or equal

Sort

A list of sort objects. Each sort object has the following properties:

column
The name of the sort column.
ascending
(optional) true for ascending order, false for descending order. The default is true.

Limit

The maximum number of records to return. If you omit it or set it to null or 0, then there is no limit.

Response (application/json)
JSON array with records. Each record is a JSON object. The properties depend on the type of records that are stored in the table. It will have at least these properties:
id
UUID
user
User ID
Records with a local time, also have this property:
localTime
Local time, formatted as 2015-09-20T00:00:00.000
Records with a UTC time, also have these properties:
utcTime
UNIX time in milliseconds
timezone
Time zone as a location-based identifier from the tz database. For example: Europe/Amsterdam.
Example
Request (filter by time on utcTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000+02:00
    &end=2015-09-21T00:00:00.000+02:00
X-Auth-Token: ...
 
{
    "filter": {
        "$and": [
            { "field1": "value1" },
            { "field2": { "$ne": 2 } },
            { "$or": [
                { "field3": "value3" },
                { "field4": { "$lt": 4 } }
            ] }
        ]
    },
    "sort": [ {
        "column": "utcTime",
        "ascending": true
    } ],
    "limit": 0
}
Request (filter by time on localTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000
    &end=2015-09-21T00:00:00.000
X-Auth-Token: ...
 
...
Request (filter by date on localTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20
    &end=2015-09-21
X-Auth-Token: ...
 
...
Response
[
    {
        "id": "69a4588f14ba4c989e83dd67ea6e4350",
        "user": "b43f784d76c44e7a9ae0370b91521753",
        "utcTime": 1442736900000,
        "timezone": "Europe/Amsterdam",
        "localTime": "2015-09-20T10:15:00.000",
        "value": 947
    },
    ...
]

# /{project}/table/{table}/first

/project/{project}/table/{table}/first GET
Description
Returns the first record from the specified table in a project. The records are sorted by “utcTime”, “localTime” or “id”, depending on what fields are available in the table. If there are no records, the result will be set to null.

If the table has a field “utcTime” or “localTime”, you can restrict the search range with a start and end time, or a start and end date.

You can specify a date/time as:

  • An ISO date/time with a time zone: 2015-09-20T00:00:00.000+02:00
    It will filter on “utcTime” if it exists. Otherwise it filters on “localTime” and ignores the time zone.
  • An ISO date/time without a time zone: 2015-09-20T00:00:00.000
    It will filter on “localTime”.
  • A date: 2015-09-20
    It will filter on “localTime”.
  • A UNIX time in milliseconds: 1442700000000
    It will filter on “utcTime” if it exists. Otherwise it will convert the unix time to a local time in time zone UTC, and then filter on “localTime”.

If the table does not have a time field, then the start and end parameters are ignored.

Authorization
Users need to have access to the specified project. Admins can access all projects.
All users can access their own data within a project that they can access, and data to which they were granted access with

/access/project/{project}

.
Patients can only access their own data.
Professionals can access the data of users to whom they were granted access.
Admins can access all data.
URL parameters
{project}
Project code (see

/project/list

)
{table}
Name of the table (see

/project/{project}/tables

)
user
(optional) User ID of the user whose data should be returned. Omit or leave empty to read your own data.
start
(optional) Start date/time of the search range (inclusive). Omit or leave empty to search from the start.
end
(optional) End date/time of the search range (exclusive). Omit or leave empty to search till the end.
Content
Response (application/json)
JSON object with the following property:
value
JSON object for the first record (see below) or null
The properties of the record object depend on the type of records that are stored in the table. It will have at least these properties:
id
UUID
user
User ID
Records with a local time, also have this property:
localTime
Local time, formatted as 2015-09-20T00:00:00.000
Records with a UTC time, also have these properties:
utcTime
UNIX time in milliseconds
timezone
Time zone as a location-based identifier from the tz database. For example: Europe/Amsterdam.
Example
Request (filter by time on utcTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/first
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000+02:00
    &end=2015-09-21T00:00:00.000+02:00
X-Auth-Token: ...
Request (filter by time on localTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/first
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000
    &end=2015-09-21T00:00:00.000
X-Auth-Token: ...
Request (filter by date on localTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/first
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20
    &end=2015-09-21
X-Auth-Token: ...
Response
{
    "value": {
        "id": "69a4588f14ba4c989e83dd67ea6e4350",
        "user": "b43f784d76c44e7a9ae0370b91521753",
        "utcTime": 1442736900000,
        "timezone": "Europe/Amsterdam",
        "localTime": "2015-09-20T10:15:00.000",
        "value": 947
    }
}
or
{
    "value": null
}

# /{project}/table/{table}/filter/get/first

/project/{project}/table/{table}/filter/get/first POST
Description
Returns the first record from the specified table in a project. If there are no records, the result will be set to null. In contrast to

/project/{project}/table/{table}/first

, this endpoint can take a custom filter, sort and limit in the request content. They can operate on other columns than user and time.
If you do not specify a custom sort, the records will be sorted by “utcTime”, “localTime” or “id”, depending on what fields are available in the table.

If the table has a field “utcTime” or “localTime”, you can restrict the search range with a start and end time, or a start and end date.

You can specify a date/time as:

  • An ISO date/time with a time zone: 2015-09-20T00:00:00.000+02:00
    It will filter on “utcTime” if it exists. Otherwise it filters on “localTime” and ignores the time zone.
  • An ISO date/time without a time zone: 2015-09-20T00:00:00.000
    It will filter on “localTime”.
  • A date: 2015-09-20
    It will filter on “localTime”.
  • A UNIX time in milliseconds: 1442700000000
    It will filter on “utcTime” if it exists. Otherwise it will convert the unix time to a local time in time zone UTC, and then filter on “localTime”.

If the table does not have a time field, then the start and end parameters are ignored.

Authorization
Users need to have access to the specified project. Admins can access all projects.
All users can access their own data within a project that they can access, and data to which they were granted access with

/access/project/{project}

.
Patients can only access their own data.
Professionals can access the data of users to whom they were granted access.
Admins can access all data.
URL parameters
{project}
Project code (see

/project/list

)
{table}
Name of the table (see

/project/{project}/tables

)
user
(optional) User ID of the user whose data should be returned. Omit or leave empty to read your own data.
start
(optional) Start date/time of the search range (inclusive). Omit or leave empty to search from the start.
end
(optional) End date/time of the search range (exclusive). Omit or leave empty to search till the end.
Content
The content can be empty or a JSON object with properties ‘filter’ and ‘sort’. Either of these properties can be omitted or set to null.

Filter

A filter is a JSON object with one key/value pair. Possible keys:

$and
JSON list with filters
$or
JSON list with filters
<field name>
a value filter (see below)
A value filter for equality is a simple string or numeric value (matching the field type).
A value filter for other comparisons is a JSON object with one key/value pair. The value is again a simple string or numeric value. The key is one of:
$ne
not equal
$lt
less than
$gt
greater than
$le
less or equal
$ge
greater or equal

Sort

A list of sort objects. Each sort object has the following properties:

column
The name of the sort column.
ascending
(optional) true for ascending order, false for descending order. The default is true.
Response (application/json)
JSON object with the following property:
value
JSON object for the first record (see below) or null
The properties of the record object depend on the type of records that are stored in the table. It will have at least these properties:
id
UUID
user
User ID
Records with a local time, also have this property:
localTime
Local time, formatted as 2015-09-20T00:00:00.000
Records with a UTC time, also have these properties:
utcTime
UNIX time in milliseconds
timezone
Time zone as a location-based identifier from the tz database. For example: Europe/Amsterdam.
Example
Request (filter by time on utcTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get/first
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000+02:00
    &end=2015-09-21T00:00:00.000+02:00
X-Auth-Token: ...
 
{
    "filter": {
        "$and": [
            { "field1": "value1" },
            { "field2": { "$ne": 2 } },
            { "$or": [
                { "field3": "value3" },
                { "field4": { "$lt": 4 } }
            ] }
        ]
    },
    "sort": [ {
        "column": "utcTime",
        "ascending": true
    } ]
}
Request (filter by time on localTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get/first
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000
    &end=2015-09-21T00:00:00.000
X-Auth-Token: ...
 
...
Request (filter by date on localTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get/first
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20
    &end=2015-09-21
X-Auth-Token: ...
 
...
Response
{
    "value": {
        "id": "69a4588f14ba4c989e83dd67ea6e4350",
        "user": "b43f784d76c44e7a9ae0370b91521753",
        "utcTime": 1442736900000,
        "timezone": "Europe/Amsterdam",
        "localTime": "2015-09-20T10:15:00.000",
        "value": 947
    }
}
or
{
    "value": null
}

# /{project}/table/{table}/last

/project/{project}/table/{table}/last GET
Description
Returns the last record from the specified table in a project. The records are sorted by “utcTime”, “localTime” or “id”, depending on what fields are available in the table. If there are no records, the result will be set to null.

If the table has a field “utcTime” or “localTime”, you can restrict the search range with a start and end time, or a start and end date.

You can specify a date/time as:

  • An ISO date/time with a time zone: 2015-09-20T00:00:00.000+02:00
    It will filter on “utcTime” if it exists. Otherwise it filters on “localTime” and ignores the time zone.
  • An ISO date/time without a time zone: 2015-09-20T00:00:00.000
    It will filter on “localTime”.
  • A date: 2015-09-20
    It will filter on “localTime”.
  • A UNIX time in milliseconds: 1442700000000
    It will filter on “utcTime” if it exists. Otherwise it will convert the unix time to a local time in time zone UTC, and then filter on “localTime”.

If the table does not have a time field, then the start and end parameters are ignored.

Authorization
Users need to have access to the specified project. Admins can access all projects.
All users can access their own data within a project that they can access, and data to which they were granted access with

/access/project/{project}

.
Patients can only access their own data.
Professionals can access the data of users to whom they were granted access.
Admins can access all data.
URL parameters
{project}
Project code (see

/project/list

)
{table}
Name of the table (see

/project/{project}/tables

)
user
(optional) User ID of the user whose data should be returned. Omit or leave empty to read your own data.
start
(optional) Start date/time of the search range (inclusive). Omit or leave empty to search from the start.
end
(optional) End date/time of the search range (exclusive). Omit or leave empty to search till the end.
Content
Response (application/json)
JSON object with the following property:
value
JSON object for the first record (see below) or null
The properties of the record object depend on the type of records that are stored in the table. It will have at least these properties:
id
UUID
user
User ID
Records with a local time, also have this property:
localTime
Local time, formatted as 2015-09-20T00:00:00.000
Records with a UTC time, also have these properties:
utcTime
UNIX time in milliseconds
timezone
Time zone as a location-based identifier from the tz database. For example: Europe/Amsterdam.
Example
Request (filter by time on utcTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/last
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000+02:00
    &end=2015-09-21T00:00:00.000+02:00
X-Auth-Token: ...
Request (filter by time on localTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/last
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000
    &end=2015-09-21T00:00:00.000
X-Auth-Token: ...
Request (filter by date on localTime)
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/last
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20
    &end=2015-09-21
X-Auth-Token: ...
Response
{
    "value": {
        "id": "69a4588f14ba4c989e83dd67ea6e4350",
        "user": "b43f784d76c44e7a9ae0370b91521753",
        "utcTime": 1442736900000,
        "timezone": "Europe/Amsterdam",
        "localTime": "2015-09-20T10:15:00.000",
        "value": 947
    }
}
or
{
    "value": null
}

# /{project}/table/{table}/filter/get/last

/project/{project}/table/{table}/filter/get/last POST
Description
Returns the last record from the specified table in a project. If there are no records, the result will be set to null. In contrast to

/project/{project}/table/{table}/last

, this endpoint can take a custom filter, sort and limit in the request content. They can operate on other columns than user and time.
If you do not specify a custom sort, the records will be sorted by “utcTime”, “localTime” or “id”, depending on what fields are available in the table.

If the table has a field “utcTime” or “localTime”, you can restrict the search range with a start and end time, or a start and end date.

You can specify a date/time as:

  • An ISO date/time with a time zone: 2015-09-20T00:00:00.000+02:00
    It will filter on “utcTime” if it exists. Otherwise it filters on “localTime” and ignores the time zone.
  • An ISO date/time without a time zone: 2015-09-20T00:00:00.000
    It will filter on “localTime”.
  • A date: 2015-09-20
    It will filter on “localTime”.
  • A UNIX time in milliseconds: 1442700000000
    It will filter on “utcTime” if it exists. Otherwise it will convert the unix time to a local time in time zone UTC, and then filter on “localTime”.

If the table does not have a time field, then the start and end parameters are ignored.

Authorization
Users need to have access to the specified project. Admins can access all projects.
All users can access their own data within a project that they can access, and data to which they were granted access with

/access/project/{project}

.
Patients can only access their own data.
Professionals can access the data of users to whom they were granted access.
Admins can access all data.
URL parameters
{project}
Project code (see

/project/list

)
{table}
Name of the table (see

/project/{project}/tables

)
user
(optional) User ID of the user whose data should be returned. Omit or leave empty to read your own data.
start
(optional) Start date/time of the search range (inclusive). Omit or leave empty to search from the start.
end
(optional) End date/time of the search range (exclusive). Omit or leave empty to search till the end.
Content
The content can be empty or a JSON object with properties ‘filter’ and ‘sort’. Either of these properties can be omitted or set to null.

Filter

A filter is a JSON object with one key/value pair. Possible keys:

$and
JSON list with filters
$or
JSON list with filters
<field name>
a value filter (see below)
A value filter for equality is a simple string or numeric value (matching the field type).
A value filter for other comparisons is a JSON object with one key/value pair. The value is again a simple string or numeric value. The key is one of:
$ne
not equal
$lt
less than
$gt
greater than
$le
less or equal
$ge
greater or equal

Sort

A list of sort objects. Each sort object has the following properties:

column
The name of the sort column.
ascending
(optional) true for ascending order, false for descending order. The default is true.
Response (application/json)
JSON object with the following property:
value
JSON object for the first record (see below) or null
The properties of the record object depend on the type of records that are stored in the table. It will have at least these properties:
id
UUID
user
User ID
Records with a local time, also have this property:
localTime
Local time, formatted as 2015-09-20T00:00:00.000
Records with a UTC time, also have these properties:
utcTime
UNIX time in milliseconds
timezone
Time zone as a location-based identifier from the tz database. For example Europe/Amsterdam.
Example
Request (filter by time on utcTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get/last
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000+02:00
    &end=2015-09-21T00:00:00.000+02:00
X-Auth-Token: ...
 
{
    "filter": {
        "$and": [
            { "field1": "value1" },
            { "field2": { "$ne": 2 } },
            { "$or": [
                { "field3": "value3" },
                { "field4": { "$lt": 4 } }
            ] }
        ]
    }
}
Request (filter by time on localTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get/last
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20T00:00:00.000
    &end=2015-09-21T00:00:00.000
X-Auth-Token: ...
 
...
Request (filter by date on localTime)
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/get/last
    ?user=b43f784d76c44e7a9ae0370b91521753
    &start=2015-09-20
    &end=2015-09-21
X-Auth-Token: ...
 
...
Response
{
    "value": {
        "id": "69a4588f14ba4c989e83dd67ea6e4350",
        "user": "b43f784d76c44e7a9ae0370b91521753",
        "utcTime": 1442736900000,
        "timezone": "Europe/Amsterdam",
        "localTime": "2015-09-20T10:15:00.000",
        "value": 947
    }
}
or
{
    "value": null
}

# /{project}/table/{table}/{recordId} (GET)

/project/{project}/table/{table}/{recordId} GET
Description
Returns the record with the specified ID in the specified table in a project. If the record does not exist, the endpoint will result in 404 Not Found.
Authorization
Users need to have access to the specified project. Admins can access all projects.
All users can access their own data within a project that they can access, and data to which they were granted access with

/access/project/{project}

.
Patients can only access their own data.
Professionals can access the data of users to whom they were granted access.
Admins can access all data.
URL parameters
{project}
Project code (see

/project/list

)
{table}
Name of the table (see

/project/{project}/tables

)
{recordId}
The ID of the record
user
(optional) User ID of the user that the record belongs to. If the record belongs to yourself, you can omit this field or leave it empty.
Content
Response
The record as a JSON object. The properties depend on the type of records that are stored in the table. It will have at least these properties:
id
UUID
user
User ID
Records with a local time, also have this property:
localTime
Local time, formatted as 2015-09-20T00:00:00.000
Records with a UTC time, also have these properties:
utcTime
UNIX time in milliseconds
timezone
Time zone as a location-based identifier from the tz database. For example: Europe/Amsterdam.
Example
Request
GET https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps
    /69a4588f14ba4c989e83dd67ea6e4350?user=b43f784d76c44e7a9ae0370b91521753
X-Auth-Token: ...
Response
{
    "id": "69a4588f14ba4c989e83dd67ea6e4350",
    "user": "b43f784d76c44e7a9ae0370b91521753",
    "timezone": "Europe/Amsterdam",
    "utcTime": 1442736900000,
    "localTime": "2015-09-20T10:15:00.000",
    "value": 947
}