# Project controller (/project) - Write
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} (POST)
All users can access their own data within a project that they can access, and data to which they were granted access with .
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.
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps ?user=b43f784d76c44e7a9ae0370b91521753 X-Auth-Token: ... [ { "id": "69a4588f14ba4c989e83dd67ea6e4350", "user": "b43f784d76c44e7a9ae0370b91521753", "timezone": "Europe/Amsterdam", "utcTime": 1442736900000, "localTime": "2015-09-20T10:15:00.000", "value": 947 }, { "timezone": "Europe/Amsterdam", "localTime": "2015-09-20T10:20:00.000", "value": 104 }, ... ]
[ "69a4588f14ba4c989e83dd67ea6e4350", "399c9c4ed74a49c0a9d0632bc51fe638", ... ]
# /{project}/table/{table}/{recordId} (PUT)
All users can access their own data within a project that they can access, and data to which they were granted access with .
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.
PUT https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps /69a4588f14ba4c989e83dd67ea6e4350?user=b43f784d76c44e7a9ae0370b91521753 X-Auth-Token: ... { "id": "69a4588f14ba4c989e83dd67ea6e4350", "user": "b43f784d76c44e7a9ae0370b91521753", "timezone": "Europe/Amsterdam", "utcTime": 1442736900000, "localTime": "2015-09-20T10:15:00.000", "value": 947 }
–
# /{project}/table/{table} (DELETE)
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.
All users can access their own data within a project that they can access, and data to which they were granted access with .
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.
DELETE 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: ...
DELETE 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: ...
DELETE 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: ...
–
# /{project}/table/{table}/filter/delete
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.
All users can access their own data within a project that they can access, and data to which they were granted access with .
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.
A filter is a JSON object with one key/value pair. Possible keys:
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:
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/delete ?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 } } ] } ] } }
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/delete ?user=b43f784d76c44e7a9ae0370b91521753 &start=2015-09-20T00:00:00.000 &end=2015-09-21T00:00:00.000 X-Auth-Token: ... ...
POST https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/filter/delete ?user=b43f784d76c44e7a9ae0370b91521753 &start=2015-09-20 &end=2015-09-21 X-Auth-Token: ... ...
–
# /{project}/table/{table}/{recordId} (DELETE)
All users can access their own data within a project that they can access, and data to which they were granted access with .
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.
DELETE https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps /69a4588f14ba4c989e83dd67ea6e4350 ?user=b43f784d76c44e7a9ae0370b91521753 X-Auth-Token: ...
–
# /{project}/table/{table}/purge
All users can access their own data within a project that they can access.
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.
DELETE https://www.example.com/servlets/senseeact/v6.1.0/project/default/table/steps/purge ?user=b43f784d76c44e7a9ae0370b91521753 X-Auth-Token: ...
–