Authentication
Sign up
Request
Endpoint
POST /api/v3/sign_up/
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/sign_up/
Parameters
{
"data": {
"attributes": {
"email":"[email protected]",
"password":"testPassword",
"username":"Wyatt Nitzsche"
},
"type":"user"
}
}
None known.
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "eddf80cc-3bd9-4418-b6a4-dccc9027d2b7",
"type": "token",
"attributes": {
"access_token": "eyJhbGciOiJIUzI1NiJ9.eyJ1dWlkIjoiYjMyODNjYmQtYzQzMS00ODU1LWFlZGUtOGNmZWUwYzFjMzNmIiwic3ViIjoiNTUiLCJzY3AiOiJ1c2VyIiwiYXVkIjpudWxsLCJpYXQiOjE2NzUwNzc3MjQsImV4cCI6MzI1MjkyNTMyNCwianRpIjoiZDRjMjRhMDctZDE1MC00NDFmLTg0NTMtYTRkY2MyNTUwZWYzIn0.D88Gtu7ERXjehnLm54GBGc1nrgzjokqCnaqQhUoWEYc",
"token_type": "Bearer",
"expires_in": null
}
},
"meta": {
"request_id": "8a2c3f7e-3772-4255-b376-02dd1fd822a5",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Reset password
Request
Endpoint
POST /api/v3/password/
Content-Type: application/vnd.api+json
POST /api/v3/password/
Parameters
{
"data": {
"type":"user",
"attributes": {
"email":"[email protected]",
"reset_password_token":"",
"password":"new_password"
}
}
}
None known.
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"success": "Reset password instructions sent to [email protected]"
}
}
Update password
Request
Endpoint
PUT /api/v3/password/
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PUT /api/v3/password/
Parameters
{
"data": {
"type":"user",
"attributes": {
"email":"[email protected]",
"reset_password_token":"M-GSCeKETQAvzbfkK9pt",
"password":"new_password"
}
}
}
None known.
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "07196094-6ac8-4f39-84a4-41ad3f0b0576",
"type": "token",
"attributes": {
"access_token": "eyJhbGciOiJIUzI1NiJ9.eyJ1dWlkIjoiZGVkYjMzYjAtMmVmMC00ZWU3LTkyZTUtYzI3YzBkOTc4MTAyIiwic3ViIjoiNTgiLCJzY3AiOiJ1c2VyIiwiYXVkIjpudWxsLCJpYXQiOjE2NzUwNzc3MjUsImV4cCI6MzI1MjkyNTMyNSwianRpIjoiNmMxMTEwOTEtNDI1Zi00ZDBkLWExOTItYzY4M2NlNGQyMThmIn0.uXeYaKcCSQTtgtNzwly1p16HotnigWAJjT91-zO6Cik",
"token_type": "Bearer",
"expires_in": null
}
},
"meta": {
"request_id": "1035b157-8798-4959-a6d1-223e7224638f",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Sign in
Request
Endpoint
POST /api/v3/sign_in/
Content-Type: application/vnd.api+json
Api-Key: 46e67c525617663b392a53c0e94ba79e62db62a851fb175ae87756d4e73c9718
POST /api/v3/sign_in/
Parameters
{
"data": {
"attributes": {
"email":"[email protected]",
"password":"testPassword"
},
"type":"user"
}
}
None known.
Response
Content-Type: application/json; charset=utf-8
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJ1dWlkIjoiZTNkZTAxNDctMjYwYi00ZDIyLWI1OTUtMTc5YTgzMjMxODkyIiwic3ViIjoiNjIiLCJzY3AiOiJ1c2VyIiwiYXVkIjpudWxsLCJpYXQiOjE2NzUwNzc3MjYsImV4cCI6MzI1MjkyNTMyNiwianRpIjoiZDcxMWNlNzMtY2Q1ZS00NGNmLWE3MDgtNDFjMDVjN2Q1OGVlIn0.-N4uJQFGWct-9Km0qB3VPEwDV8kY7GzYhMIBsuCXoPI
200 OK
{
"data": {
"id": "c5739c21-10cc-4b7b-af53-18f208bf7b1a",
"type": "token",
"attributes": {
"access_token": "eyJhbGciOiJIUzI1NiJ9.eyJ1dWlkIjoiZTNkZTAxNDctMjYwYi00ZDIyLWI1OTUtMTc5YTgzMjMxODkyIiwic3ViIjoiNjIiLCJzY3AiOiJ1c2VyIiwiYXVkIjpudWxsLCJpYXQiOjE2NzUwNzc3MjYsImV4cCI6MzI1MjkyNTMyNiwianRpIjoiZDcxMWNlNzMtY2Q1ZS00NGNmLWE3MDgtNDFjMDVjN2Q1OGVlIn0.-N4uJQFGWct-9Km0qB3VPEwDV8kY7GzYhMIBsuCXoPI",
"token_type": "Bearer",
"expires_in": null
}
},
"meta": {
"request_id": "70a4f0e5-5082-41c7-8963-5b1b72a6d1bf",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Sign out
Request
Endpoint
DELETE /api/v3/sign_out/
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/sign_out/
Parameters
None known.
Response
204 No Content
Errors
The Papershift API uses the following error codes:
Error Code | Meaning |
---|---|
400 | Bad Request -- Your request is invalid. |
401 | Unauthorized -- Your API key is wrong. |
403 | Forbidden -- The request is hidden for administrators only. |
404 | Not Found -- The specified record could not be found. |
500 | Internal Server Error -- We had a problem with our server. Try again later. |
503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |
Filters
You can easily filter all the collections by following the pattern:
This will query records where the name equals Company_1.
/api/v3/accounts/1/workspaces?filter[name]=eq:Company_1
Note: Invalid matchers or fields are simply gonna be ignored, so, if your filtering is not working, check for misspellings!
Name | Description |
---|---|
eq | equal |
!eq | not equal |
gt | greather than |
gte | greather or equal |
lt | less than |
lte | less than or equal |
pre | starts with |
suf | ends with |
ct | contains |
!ct | does not contain |
in | match values in array |
present | not null and not empty |
Sorting
You can easily sort all the collections by following the pattern:
Add +
or nothing to sort in ascending order
Add -
to sort in descending order
This will sort by name (in ascending order)
/api/v3/accounts/1/workspaces?sort=name
This will sort by name (in ascending order) and by id (in descending order):
/api/v3/accounts/1/workspaces?sort=name,-id
Absences
Absences/Attachments
List of absences attachments
Request
Endpoint
GET /api/v3/workspaces/1028/absences/4/attachments
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/absences/:absence_id/attachments
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
absence_id required | Absence ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "4",
"type": "attachment",
"attributes": {
"author": "Enrico Schultz",
"created_at": "2023-01-30T12:21:46+01:00",
"updated_at": "2023-01-30T12:21:46+01:00",
"file_name": "example.png",
"file_content_type": "image/png",
"file_url": "/system/note_attachments/files/000/000/004/original/example.png"
}
}
],
"meta": {
"request_id": "e0737f12-0ecb-4b10-a781-f9f2e4e87b46",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
Absences/Notes
Create note
Request
Endpoint
POST /api/v3/workspaces/1028/absences/5/notes
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/absences/:absence_id/notes
Parameters
{
"data": {
"attributes": {
"content":"Create note test"
},
"type":"note"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
absence_id required | Absence ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "333",
"type": "user_note",
"attributes": {
"permissions": null,
"content": "Create note test",
"author": "Freiherr Sami Grams",
"author_role": "admin",
"type": "UserNote",
"created_at": "2023-01-30T12:21:49+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "95191a33-42be-4451-8392-67c26eaf3ff9",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Delete note
Request
Endpoint
DELETE /api/v3/workspaces/1028/absences/9/notes/341
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/absences/:absence_id/notes/:user_note_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
absence_id required | Absence ID |
user_note_id required | User Note ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "341",
"type": "user_note",
"attributes": {
"permissions": null,
"content": "This is a note",
"author": "Enrico Schultz",
"author_role": "employee",
"type": "UserNote",
"created_at": "2023-01-30T16:21:50+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "fbd7111e-9fe4-487c-b57b-b9bf81f4360a",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Show note
Request
Endpoint
GET /api/v3/workspaces/1028/absences/11/notes
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/absences/:absence_id/notes
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
absence_id required | Absence ID |
permissions | User Permissions |
filter | Type filter |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "345",
"type": "note",
"attributes": {
"permissions": null,
"content": "Absence has been created.",
"type": "SystemNote",
"created_at": "2023-01-30T12:21:50+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
},
{
"id": "346",
"type": "note",
"attributes": {
"permissions": null,
"content": "This is a note",
"author": "Freiherr Sami Grams",
"author_role": "admin",
"type": "UserNote",
"created_at": "2023-01-30T16:21:50+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
}
],
"meta": {
"request_id": "4dce75a7-85d8-4d91-b5d9-d02ae8323920",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2
}
}
Update note
Request
Endpoint
PUT /api/v3/workspaces/1028/absences/17/notes/358
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PUT /api/v3/workspaces/:workspace_id/absences/:absence_id/notes/:user_note_id
Parameters
{
"data": {
"attributes": {
"content":"Update note test"
},
"type":"note"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
absence_id required | Absence ID |
user_note_id required | User Note ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "358",
"type": "user_note",
"attributes": {
"permissions": null,
"content": "Update note test",
"author": "Enrico Schultz",
"author_role": "employee",
"type": "UserNote",
"created_at": "2023-01-30T16:21:52+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "9f3f2605-b04a-43ff-986f-9aa96a9d9d62",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Accounts
Show account
Request
Endpoint
GET /api/v3/accounts/1026
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/accounts/:account_id
Parameters
Name | Description |
---|---|
account_id required | Account ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1026",
"type": "account",
"attributes": {
"phone": "+492204948890",
"country": null,
"locale": "de",
"account_name": "Wallstab-Lutje",
"created_at": "2023-01-30T11:21:41Z",
"updated_at": "2023-01-30T11:21:41Z"
}
},
"meta": {
"request_id": "2d818e85-d2a2-4c79-81f4-4080cc07ea56",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update account
Request
Endpoint
PATCH /api/v3/accounts/1026
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/accounts/:account_id
Parameters
{
"data": {
"type":"account",
"attributes": {
"name":"New Name"
}
}
}
Name | Description |
---|---|
account_id required | Account ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1026",
"type": "account",
"attributes": {
"phone": "+492204948890",
"country": null,
"locale": "de",
"account_name": "New Name",
"created_at": "2023-01-30T11:21:41Z",
"updated_at": "2023-01-30T11:22:00Z"
}
},
"meta": {
"request_id": "b4296a5c-6631-411a-ac68-375316c3eb11",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Accounts/DataProfiles
Account Data Profiles
List of data profiles
Request
Endpoint
GET /api/v3/accounts/1031/workspaces/1029/data_profiles
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/accounts/:account_id/workspaces/:workspace_id/data_profiles
Parameters
Name | Description |
---|---|
account_id required | Account Id |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "28",
"type": "data_profile",
"attributes": {
"permissions": null,
"position": null,
"user_checkin": true,
"enabled": true,
"title": "Kontakt"
},
"relationships": {
"custom_fields": {
"data": [
{
"id": "234",
"type": "custom_field"
}
]
}
}
},
{
"id": "30",
"type": "data_profile",
"attributes": {
"permissions": null,
"position": null,
"user_checkin": true,
"enabled": true,
"title": "Lohndirektest"
},
"relationships": {
"custom_fields": {
"data": [
{
"id": "242",
"type": "custom_field"
},
{
"id": "243",
"type": "custom_field"
},
{
"id": "244",
"type": "custom_field"
},
{
"id": "245",
"type": "custom_field"
},
{
"id": "246",
"type": "custom_field"
},
{
"id": "247",
"type": "custom_field"
},
{
"id": "248",
"type": "custom_field"
},
{
"id": "249",
"type": "custom_field"
}
]
}
}
},
{
"id": "29",
"type": "data_profile",
"attributes": {
"permissions": null,
"position": null,
"user_checkin": true,
"enabled": true,
"title": "Sonstiges"
},
"relationships": {
"custom_fields": {
"data": [
{
"id": "236",
"type": "custom_field"
},
{
"id": "237",
"type": "custom_field"
},
{
"id": "238",
"type": "custom_field"
},
{
"id": "239",
"type": "custom_field"
},
{
"id": "240",
"type": "custom_field"
},
{
"id": "241",
"type": "custom_field"
}
]
}
}
}
],
"meta": {
"request_id": "53b75e7b-3cf3-477c-bb7d-225ba6b9c3b0",
"git_commit": "c9cde36a0c3da21578efbf03e0fd305e709ff65d",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 3
}
}
Accounts/Users
Get users in an account. Requires accounts module*
List of users
Request
Endpoint
GET /api/v3/accounts/1026/users?include=account&workspaces&absence_types
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/accounts/:account_id/users
Parameters
include: account, workspaces, absence_types
Name | Description |
---|---|
include | Relationships details |
account_id required | Account ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 5
200 OK
{
"data": [
{
"id": "39",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Freiherr Sami Grams",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2023-01-01",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 1,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "86re",
"locale": null,
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
{
"id": "1",
"type": "tag"
}
]
},
"custom_field_values": {
"data": [
]
}
}
},
{
"id": "40",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Enrico Schultz",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2022-12-30",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 8,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "17hs",
"locale": null,
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
},
{
"id": "41",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Fr. Ruben Plank",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2023-01-01",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 3,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "7pbv",
"locale": null,
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
},
{
"id": "42",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Jannes Scherer",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2023-01-01",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 1,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "rhf7",
"locale": null,
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
},
{
"id": "43",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Karina zu Pippig",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2023-01-01",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 4,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "ygr3",
"locale": null,
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
}
],
"included": [
{
"id": "1026",
"type": "account",
"attributes": {
"phone": "+492204948890",
"country": null,
"locale": "de",
"account_name": "Wallstab-Lutje",
"created_at": "2023-01-30T11:21:41Z",
"updated_at": "2023-01-30T11:21:41Z"
}
},
{
"id": "1028",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "Company",
"phone": null,
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": null,
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": null
},
"relationships": {
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
}
}
},
{
"id": "1028",
"type": "absence_type",
"attributes": {
"title": "Holiday 1_759",
"kind": "vacation"
}
}
],
"meta": {
"request_id": "2d148f3d-b189-43fc-a4df-61deb89b110f",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 5
}
}
Show user
Request
Endpoint
GET /api/v3/accounts/1026/users/40?include=account&areas&workspaces
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/accounts/:account_id/users/:user_id
Parameters
include: account, areas, workspaces
Name | Description |
---|---|
include | Relationships details |
account_id required | Account ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "40",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Enrico Schultz",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2022-12-30",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 8,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "17hs",
"locale": null,
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
},
"meta": {
"request_id": "4addaee0-3d53-439a-b0b4-7b6da500d775",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
},
"included": [
{
"id": "1026",
"type": "account",
"attributes": {
"phone": "+492204948890",
"country": null,
"locale": "de",
"account_name": "Wallstab-Lutje",
"created_at": "2023-01-30T11:21:41Z",
"updated_at": "2023-01-30T11:22:01Z"
}
},
{
"id": "1028",
"type": "area",
"attributes": {
"permissions": null,
"name": "Lorenz vom Wollmann",
"status": "active",
"color": "#913D88",
"external_id": null,
"created_at": "2023-01-30T11:21:43Z",
"updated_at": "2023-01-30T11:21:43Z"
},
"relationships": {
"users": {
"data": [
{
"id": "40",
"type": "user"
},
{
"id": "42",
"type": "user"
},
{
"id": "43",
"type": "user"
}
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
{
"id": "1028",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "Company",
"phone": null,
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": null,
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": null
},
"relationships": {
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
}
}
}
]
}
Actions
Create action
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/actions
Parameters
{
"data": {
"attributes": {
"action_type":"start",
"device_id":null,
"action_time":"2023-01-30T12:23:02+01:00",
"user_id":40,
"taggings_attributes": [
{
"tag_id":41
}
]
},
"type":"action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "bdca0db2-ef67-478c-a46f-3cad8a0c4d48",
"type": "action",
"attributes": {
"action_type": "start",
"working_session_id": null,
"action_time": "2023-01-30T11:23:02Z",
"created_at": "2023-01-30T11:23:02Z",
"updated_at": "2023-01-30T11:23:02Z"
},
"relationships": {
"user": {
"data": {
"id": "40",
"type": "user"
}
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "fb49ee56-1478-4c12-9171-a50a10768ef5",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
List of actions
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/actions
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/actions
Parameters
Name | Description |
---|---|
filter | Filter param |
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "e43b106d-2367-4768-b9f4-5e5bdf050a1a",
"type": "action",
"attributes": {
"action_type": "start",
"working_session_id": null,
"action_time": "2023-01-30T11:23:02Z",
"created_at": "2023-01-30T11:23:02Z",
"updated_at": "2023-01-30T11:23:02Z"
},
"relationships": {
"user": {
"data": {
"id": "39",
"type": "user"
}
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
{
"id": "14412527-8afd-44aa-ad1b-e47d9ad23274",
"type": "action",
"attributes": {
"action_type": "end",
"working_session_id": null,
"action_time": "2023-01-30T18:23:02Z",
"created_at": "2023-01-30T18:23:02Z",
"updated_at": "2023-01-30T18:23:02Z"
},
"relationships": {
"user": {
"data": {
"id": "39",
"type": "user"
}
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
{
"id": "9c69105e-2bfc-4ef0-ba13-54ea69422d06",
"type": "action",
"attributes": {
"action_type": "start-break",
"working_session_id": null,
"action_time": "2023-01-30T15:23:02Z",
"created_at": "2023-01-30T15:23:02Z",
"updated_at": "2023-01-30T15:23:02Z"
},
"relationships": {
"user": {
"data": {
"id": "39",
"type": "user"
}
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
{
"id": "1d2153cf-4024-41c6-b7af-8335b790da6d",
"type": "action",
"attributes": {
"action_type": "end-break",
"working_session_id": null,
"action_time": "2023-01-30T16:23:02Z",
"created_at": "2023-01-30T16:23:02Z",
"updated_at": "2023-01-30T16:23:02Z"
},
"relationships": {
"user": {
"data": {
"id": "39",
"type": "user"
}
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
}
],
"meta": {
"request_id": "a4e9fec9-d434-491c-b0a7-509be9bbc3aa",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
Show action
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/actions/47aa04af-df99-41c6-8d2d-36d1978746b7
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/actions/:action_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
action_id required | Action ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "47aa04af-df99-41c6-8d2d-36d1978746b7",
"type": "action",
"attributes": {
"action_type": "start",
"working_session_id": null,
"action_time": "2023-01-30T11:23:03Z",
"created_at": "2023-01-30T11:23:03Z",
"updated_at": "2023-01-30T11:23:03Z"
},
"relationships": {
"user": {
"data": {
"id": "39",
"type": "user"
}
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "4ceaa1f5-8dd6-482f-b825-b22c073ef09a",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Actions/Taggings
Attaches taggings to an action
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/actions/c505a003-c5ef-4ffe-b2fc-67032458d0bb/taggings
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/actions/:action_id/taggings
Parameters
{
"data": {
"attributes": {
"tag_id":42
},
"type":"tagging"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
action_id required | Action ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "c985b0fa-fae5-463b-bf9b-3edf78404123",
"type": "tagging",
"attributes": {
"taggable_type": "WorkingSessionAction",
"taggable_id": "7f5b60b6-facd-4f76-bc31-306b23cb21fa"
},
"relationships": {
"tag": {
"data": {
"id": "42",
"type": "tag"
}
}
}
},
"meta": {
"request_id": "fa8420ee-1088-410d-9dc1-4ebe12d573b1",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Locations
List of locations
Request
Endpoint
GET /api/v3/industry_examples
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/industry_examples
Parameters
None known.
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "choose_your_industry",
"type": "industry_example",
"attributes": {
"name": "Choose industry",
"label": "[EN] Plain"
}
},
{
"id": "1051",
"type": "industry_example",
"attributes": {
"name": "[EN]",
"label": ""
}
}
],
"meta": {
"request_id": "8d79aa8c-44f7-4b4e-b3ae-15cf55bb5150",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2
}
}
Status
Show server status
Request
Endpoint
GET /api/v3/status/
GET /api/v3/status/
Parameters
None known.
Response
204 No Content
TimeTracking
Create time tracking
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings
Parameters
{
"data": {
"attributes": {
"assignment_id":"",
"break_duration":"",
"breaks_attributes": [
{
"ends_at":"2020-05-20T05:02:00+02:00",
"starts_at":"2020-05-20T05:01:00+02:00"
}
],
"company_id":"",
"confirmed":false,
"created_by":"admin",
"default_break_duration":1800,
"end_signature_id":"",
"ends_at":"2020-05-20T05:06:00+02:00",
"external_id":"",
"force_custom_break_duration":false,
"import_id":"",
"limited":false,
"planned":false,
"start_signature_id":"",
"starts_at":"2020-05-20T05:00:00+02:00"
},
"relationships": {
"area": {
"data": {
"id":"1058",
"type":"area"
}
},
"tags": {
"data": [
{
"id":"48",
"type":"tag"
}
]
},
"user": {
"data": {
"id":"40",
"type":"user_overview"
}
}
},
"type":"time_tracking"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "111",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": 39,
"break_duration": 60,
"default_break_duration": 0,
"created_by": "admin",
"force_custom_break_duration": false,
"external_id": "",
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "finished",
"starts_at": "2020-05-20T03:00:00Z",
"ends_at": "2020-05-20T03:06:00Z",
"actual_starts_at": "2020-05-20T03:00:00Z",
"actual_ends_at": "2020-05-20T03:06:00Z",
"created_at": "2023-01-30T11:23:11Z",
"updated_at": "2023-01-30T11:23:11Z",
"gross_time": 0.1,
"net_time": 0.08,
"break_time": 0.02,
"system_notes_count": 2,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"area": {
"data": {
"id": "1058",
"type": "area"
}
},
"attachments": {
"data": [
]
},
"breaks": {
"data": [
{
"id": "14",
"type": "break"
}
]
},
"notes": {
"data": [
{
"id": "655",
"type": "note"
},
{
"id": "656",
"type": "note"
}
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
{
"id": "48",
"type": "tag"
}
]
},
"followers": {
"data": [
]
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"last_editor": {
"data": {
"id": "39",
"type": "user_overview"
}
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "cafb40c6-e447-4d28-88db-ac2a61f94401",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update time tracking
Request
Endpoint
PATCH /api/v3/workspaces/1028/time_trackings/148
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id
Parameters
{
"data": {
"attributes": {
"breaks_attributes": [
{
"starts_at":"2023-01-30T09:53:23Z",
"ends_at":"2023-01-30T10:53:23Z"
}
],
"ends_at":"2023-01-30T11:03:23Z",
"starts_at":"2023-01-30T09:43:23Z"
},
"relationships": {
"area": {
"data": {
"id":"1068",
"type":"area"
}
},
"tags": {
"data": [
{
"id":"57",
"type":"tag"
},
{
"id":"58",
"type":"tag"
}
]
}
},
"type":"time_tracking"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | Time tracking ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "148",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": 39,
"break_duration": 3600,
"default_break_duration": 0,
"created_by": "browser-stamps",
"force_custom_break_duration": false,
"external_id": null,
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "finished",
"starts_at": "2023-01-30T09:43:23Z",
"ends_at": "2023-01-30T11:03:23Z",
"actual_starts_at": "2023-01-30T09:23:23Z",
"actual_ends_at": "2023-01-30T11:23:23Z",
"created_at": "2023-01-30T11:23:23Z",
"updated_at": "2023-01-30T11:23:23Z",
"gross_time": 1.33,
"net_time": 0.33,
"break_time": 1.0,
"system_notes_count": 3,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"area": {
"data": {
"id": "1068",
"type": "area"
}
},
"attachments": {
"data": [
]
},
"breaks": {
"data": [
{
"id": "26",
"type": "break"
}
]
},
"notes": {
"data": [
{
"id": "713",
"type": "note"
},
{
"id": "717",
"type": "note"
},
{
"id": "718",
"type": "note"
}
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
{
"id": "57",
"type": "tag"
},
{
"id": "58",
"type": "tag"
}
]
},
"followers": {
"data": [
]
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"last_editor": {
"data": {
"id": "39",
"type": "user_overview"
}
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "a55d8ce0-1d97-4225-9437-f9aa08a12a17",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
List of time trackings
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
permissions | User Permissions |
filter | Filter param |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "127",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": null,
"break_duration": null,
"default_break_duration": 0,
"created_by": "browser-stamps",
"force_custom_break_duration": false,
"external_id": null,
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "finished",
"starts_at": "2023-01-30T05:23:18Z",
"ends_at": "2023-01-30T07:23:18Z",
"actual_starts_at": "2023-01-30T05:23:18Z",
"actual_ends_at": "2023-01-30T07:23:18Z",
"created_at": "2023-01-30T11:23:18Z",
"updated_at": "2023-01-30T11:23:18Z",
"gross_time": 2.0,
"net_time": 2.0,
"break_time": 0.0,
"system_notes_count": 1,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"attachments": {
"data": [
]
},
"breaks": {
"data": [
{
"id": "18",
"type": "break"
}
]
},
"notes": {
"data": [
{
"id": "679",
"type": "note"
}
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
]
},
"followers": {
"data": [
]
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"last_editor": {
"data": null
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
{
"id": "926e27c3-cb9c-400b-a889-f06062c97220",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": null,
"break_duration": null,
"default_break_duration": 0,
"created_by": "actions",
"force_custom_break_duration": false,
"external_id": null,
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "running",
"starts_at": "2023-01-30T10:53:18Z",
"ends_at": null,
"actual_starts_at": null,
"actual_ends_at": null,
"created_at": "2023-01-30T11:23:18Z",
"updated_at": "2023-01-30T11:23:18Z",
"breaks": [
],
"gross_time": 0.5,
"net_time": 0.5,
"break_time": 0.0,
"system_notes_count": 0,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"attachments": {
"data": [
]
},
"breaks": {
"data": [
]
},
"notes": {
"data": [
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
]
},
"followers": {
"data": [
]
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"last_editor": {
"data": null
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
}
],
"meta": {
"request_id": "3317bdd6-c96b-4f99-9ad2-c00139fbae86",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2,
"total_unconfirmed": 2,
"total_confirmed": 0,
"total_running": 1,
"total_gross_time": 2.5,
"total_net_time": 2.5,
"total_break_time": 0.0
}
}
Show time tracking
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/134?include=workspace&user&area&tags&breaks&followers
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id
Parameters
include: workspace,user,area,tags,breaks,followers
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | Time Tracking ID |
permissions | User Permissions |
include | Included relationships |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "134",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": null,
"break_duration": null,
"default_break_duration": 0,
"created_by": "browser-stamps",
"force_custom_break_duration": false,
"external_id": null,
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "finished",
"starts_at": "2023-01-30T09:23:20Z",
"ends_at": "2023-01-30T11:23:20Z",
"actual_starts_at": "2023-01-30T09:23:20Z",
"actual_ends_at": "2023-01-30T11:23:20Z",
"created_at": "2023-01-30T11:23:20Z",
"updated_at": "2023-01-30T11:23:20Z",
"gross_time": 2.0,
"net_time": 2.0,
"break_time": 0.0,
"system_notes_count": 1,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"area": {
"data": {
"id": "1062",
"type": "area"
}
},
"attachments": {
"data": [
]
},
"breaks": {
"data": [
]
},
"notes": {
"data": [
{
"id": "687",
"type": "note"
}
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
]
},
"followers": {
"data": [
]
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"last_editor": {
"data": null
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "0b4adf97-5c49-4080-a70b-cf1704185744",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
},
"included": [
{
"id": "1028",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "Company",
"phone": null,
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": null,
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": null
},
"relationships": {
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
}
}
},
{
"id": "40",
"type": "user_overview",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Enrico Schultz",
"abbreviation": null,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"status": "active"
}
},
{
"id": "1062",
"type": "area",
"attributes": {
"permissions": null,
"name": "Wilbur Hagenes",
"status": "active",
"color": "#3A539B",
"external_id": null,
"created_at": "2023-01-30T11:23:20Z",
"updated_at": "2023-01-30T11:23:20Z"
},
"relationships": {
"users": {
"data": [
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1092",
"type": "workspace"
}
}
}
}
]
}
Delete time tracking
Request
Endpoint
DELETE /api/v3/workspaces/1028/time_trackings/114
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | Time tracking ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "114",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": null,
"break_duration": null,
"default_break_duration": 0,
"created_by": "browser-stamps",
"force_custom_break_duration": false,
"external_id": null,
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "finished",
"starts_at": "2023-01-30T09:23:12Z",
"ends_at": "2023-01-30T11:23:12Z",
"actual_starts_at": "2023-01-30T09:23:12Z",
"actual_ends_at": "2023-01-30T11:23:12Z",
"created_at": "2023-01-30T11:23:12Z",
"updated_at": "2023-01-30T11:23:12Z",
"gross_time": 2.0,
"net_time": 2.0,
"break_time": 0.0,
"system_notes_count": 0,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"attachments": {
"data": [
]
},
"breaks": {
"data": [
]
},
"notes": {
"data": [
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
]
},
"followers": {
"data": [
]
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"last_editor": {
"data": null
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "35ec51ca-8be7-4abd-9b32-cf5f1d7e9362",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Adding tags to time trackings
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"tag",
"ids":[70],
"tag_ids":[45]
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
Overriding tags for multiple time trackings
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"tag",
"ids":[73],
"tag_ids":[47],
"override_tags":true
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
Assigns followers to time tracking
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"follower",
"ids":[76],
"follower_ids":[115,40]
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
Rremoves followers to time tracking
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"follower",
"ids":[79],
"follower_ids":[]
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
Assigns note for multiple time tracking
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"note",
"ids":[82],
"note": {
"content":"this is an assigned note"
}
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
Confirms all time-trackings
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"confirm",
"ids":[11],
"all":true
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
Deletes multiple time tracking
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"destroy",
"ids":[67]
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
Timetrackings/Attachments
List of time tracking attachments
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/40/attachments
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/attachments
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | Time tracking ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "5",
"type": "attachment",
"attributes": {
"author": "Enrico Schultz",
"created_at": "2023-01-30T12:21:58+01:00",
"updated_at": "2023-01-30T12:21:58+01:00",
"file_name": "example.png",
"file_content_type": "image/png",
"file_url": "/system/note_attachments/files/000/000/005/original/example.png"
}
}
],
"meta": {
"request_id": "758cddff-b9f0-4419-af6b-afaecfc321cc",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
Timetrackings/Breaks
Create break
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/94/breaks
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/breaks
Parameters
{
"data": {
"attributes": {
"ends_at":"2023-01-30T12:03:08+01:00",
"starts_at":"2023-01-30T10:43:08+01:00"
},
"type":"break"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | The time tracking ID associated to the break |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "2",
"type": "break",
"attributes": {
"starts_at": "2023-01-30T10:43:08+01:00",
"ends_at": "2023-01-30T12:03:08+01:00",
"created_at": "2023-01-30T12:23:08+01:00",
"updated_at": "2023-01-30T12:23:08+01:00",
"start_signature_id": null,
"end_signature_id": null,
"created_by": "browser-stamps"
},
"relationships": {
"time_tracking": {
"data": {
"id": "94",
"type": "time_tracking"
}
}
}
},
"meta": {
"request_id": "af7b8f1e-e430-4d17-95e7-bfe1d31582ea",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update break
Request
Endpoint
PATCH /api/v3/workspaces/1028/time_trackings/105/breaks/11
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/breaks/:break_id
Parameters
{
"data": {
"attributes": {
"ends_at":"2023-01-30T12:03:10+01:00",
"starts_at":"2023-01-30T10:43:10+01:00"
},
"type":"break"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | The time tracking ID associated to the break |
break_id required | Break id |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "11",
"type": "break",
"attributes": {
"starts_at": "2023-01-30T10:43:10+01:00",
"ends_at": "2023-01-30T12:03:10+01:00",
"created_at": "2023-01-30T12:23:10+01:00",
"updated_at": "2023-01-30T12:23:10+01:00",
"start_signature_id": null,
"end_signature_id": null,
"created_by": "employee"
},
"relationships": {
"time_tracking": {
"data": {
"id": "105",
"type": "time_tracking"
}
}
}
},
"meta": {
"request_id": "e7824b41-6e46-441b-a1d6-d29ef34f3137",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Show break
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/102/breaks/8?include=time_tracking
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/breaks/:break_id
Parameters
include: time_tracking
Name | Description |
---|---|
include | Relationships details |
workspace_id required | Workspace ID |
time_tracking_id required | The time tracking ID associated to the break |
break_id required | Break id |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "8",
"type": "break",
"attributes": {
"starts_at": "2023-01-30T11:23:09+01:00",
"ends_at": "2023-01-30T11:53:09+01:00",
"created_at": "2023-01-30T12:23:09+01:00",
"updated_at": "2023-01-30T12:23:09+01:00",
"start_signature_id": null,
"end_signature_id": null,
"created_by": "employee"
},
"relationships": {
"time_tracking": {
"data": {
"id": "102",
"type": "time_tracking"
}
}
}
},
"meta": {
"request_id": "777967bc-191e-4c62-90fd-1d72ef25bd30",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
},
"included": [
{
"id": "102",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": null,
"break_duration": null,
"default_break_duration": 0,
"created_by": "browser-stamps",
"force_custom_break_duration": false,
"external_id": null,
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "finished",
"starts_at": "2023-01-30T09:23:09Z",
"ends_at": "2023-01-30T11:23:09Z",
"actual_starts_at": "2023-01-30T09:23:09Z",
"actual_ends_at": "2023-01-30T11:23:09Z",
"created_at": "2023-01-30T11:23:09Z",
"updated_at": "2023-01-30T11:23:09Z",
"gross_time": 2.0,
"net_time": 2.0,
"break_time": 0.0,
"system_notes_count": 1,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"attachments": {
"data": [
]
},
"breaks": {
"data": [
{
"id": "8",
"type": "break"
}
]
},
"notes": {
"data": [
{
"id": "642",
"type": "note"
}
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
]
},
"followers": {
"data": [
]
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"last_editor": {
"data": null
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
}
]
}
List of breaks
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/100/breaks
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/breaks
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | The time tracking ID associated to the break |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "6",
"type": "break",
"attributes": {
"starts_at": "2023-01-30T11:23:09+01:00",
"ends_at": "2023-01-30T11:53:09+01:00",
"created_at": "2023-01-30T12:23:09+01:00",
"updated_at": "2023-01-30T12:23:09+01:00",
"start_signature_id": null,
"end_signature_id": null,
"created_by": "employee"
},
"relationships": {
"time_tracking": {
"data": {
"id": "100",
"type": "time_tracking"
}
}
}
}
],
"meta": {
"request_id": "fb07a476-1e5d-461d-85b7-4db94213dd4d",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
Delete break
Request
Endpoint
DELETE /api/v3/workspaces/1028/time_trackings/99/breaks/5
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/breaks/:break_id
Parameters
Name | Description |
---|---|
workspace_id required | workspace |
time_tracking_id required | time tracking |
break_id required | break |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "5",
"type": "break",
"attributes": {
"starts_at": "2023-01-30T11:23:08+01:00",
"ends_at": "2023-01-30T11:53:08+01:00",
"created_at": "2023-01-30T12:23:08+01:00",
"updated_at": "2023-01-30T12:23:08+01:00",
"start_signature_id": null,
"end_signature_id": null,
"created_by": "employee"
},
"relationships": {
"time_tracking": {
"data": {
"id": "99",
"type": "time_tracking"
}
}
}
},
"meta": {
"request_id": "626744d1-9980-4ab0-b339-b86d1c638547",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
TimeTrackings/Exports
Create time-tracking export
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/exports
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/exports
Parameters
{
"data": {
"attributes": {
"export_type":"sum",
"format":"xls",
"ids":[16]
},
"type":"export"
}
}
Name | Description |
---|---|
filter | Filter param |
workspace_id required | Workspace ID/Company ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "13",
"type": "export",
"attributes": {
"id": 13,
"user_id": 39,
"export_type": "sum",
"status": "pending",
"file_url": "/files/original/missing.png",
"format": null
}
},
"meta": {
"request_id": "cb07cb7f-407c-4b51-bc83-dd4c8f0d13f9",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Show time-tracking export
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/exports/15
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/exports/:export_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
workspace_id required | Export ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "15",
"type": "export",
"attributes": {
"id": 15,
"user_id": 40,
"export_type": "list",
"status": "success",
"file_url": "/system/exports/files/000/000/015/original/sit.png?1675077707",
"format": "png"
}
},
"meta": {
"request_id": "17b0e222-9c6f-463b-b0eb-71131e1a2a11",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Timetrackings/Followers
Add follower for time tracking
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/18/followers
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/followers
Parameters
{
"data": {
"attributes": {
"ids":[40]
},
"type":"follower"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
time_tracking_id required | Time Tracking ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "18",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": null,
"break_duration": null,
"default_break_duration": 0,
"created_by": "browser-stamps",
"force_custom_break_duration": false,
"external_id": null,
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "finished",
"starts_at": "2023-01-30T09:21:48Z",
"ends_at": "2023-01-30T11:21:48Z",
"actual_starts_at": "2023-01-30T09:21:48Z",
"actual_ends_at": "2023-01-30T11:21:48Z",
"created_at": "2023-01-30T11:21:48Z",
"updated_at": "2023-01-30T11:21:48Z",
"gross_time": 2.0,
"net_time": 2.0,
"break_time": 0.0,
"system_notes_count": 1,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"attachments": {
"data": [
]
},
"breaks": {
"data": [
]
},
"notes": {
"data": [
{
"id": "329",
"type": "note"
}
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
]
},
"followers": {
"data": [
{
"id": "40",
"type": "user_overview"
}
]
},
"user": {
"data": {
"id": "39",
"type": "user_overview"
}
},
"last_editor": {
"data": null
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "444cd572-5fd7-4bcb-8994-037a05712179",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Get time tracking followers list
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/20/followers
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/followers
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
time_tracking_id required | Time Tracking ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "40",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Enrico Schultz",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2022-12-30",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 8,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "17hs",
"locale": null,
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
}
],
"meta": {
"request_id": "23e4a1c3-54af-497d-b7bf-21f63badebbb",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
Delete follower for time tracking
Request
Endpoint
DELETE /api/v3/workspaces/1028/time_trackings/19/followers/40
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/followers/:follower_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
time_tracking_id required | Time Tracking ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "19",
"type": "time_tracking",
"attributes": {
"permissions": null,
"assignment_id": null,
"confirmed": false,
"last_update_by": null,
"break_duration": null,
"default_break_duration": 0,
"created_by": "browser-stamps",
"force_custom_break_duration": false,
"external_id": null,
"status": "active",
"start_signature_id": null,
"end_signature_id": null,
"current_status": "finished",
"starts_at": "2023-01-30T09:21:48Z",
"ends_at": "2023-01-30T11:21:48Z",
"actual_starts_at": "2023-01-30T09:21:48Z",
"actual_ends_at": "2023-01-30T11:21:48Z",
"created_at": "2023-01-30T11:21:48Z",
"updated_at": "2023-01-30T11:21:48Z",
"gross_time": 2.0,
"net_time": 2.0,
"break_time": 0.0,
"system_notes_count": 1,
"user_notes_count": 0,
"signatures_count": 0,
"attachments_count": 0
},
"relationships": {
"attachments": {
"data": [
]
},
"breaks": {
"data": [
]
},
"notes": {
"data": [
{
"id": "330",
"type": "note"
}
]
},
"signatures": {
"data": [
]
},
"tags": {
"data": [
]
},
"followers": {
"data": [
]
},
"user": {
"data": {
"id": "39",
"type": "user_overview"
}
},
"last_editor": {
"data": null
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "610563fe-9b58-413c-8ad0-406a07849e74",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Timetrackings/Notes
Create note for time tracking
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/21/notes
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/notes
Parameters
{
"data": {
"attributes": {
"content":"Create note test"
},
"type":"note"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
time_tracking_id required | Time Tracking ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "365",
"type": "user_note",
"attributes": {
"permissions": null,
"content": "Create note test",
"author": "Freiherr Sami Grams",
"author_role": "admin",
"type": "UserNote",
"created_at": "2023-01-30T12:21:52+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "3ae7b458-1e44-47a6-bce9-7e7034d53849",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update note for time tracking
Request
Endpoint
PUT /api/v3/workspaces/1028/time_trackings/33/notes/390
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PUT /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/notes/:user_note_id
Parameters
{
"data": {
"attributes": {
"content":"Update note test"
},
"type":"note"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
time_tracking_id required | Time Tracking ID |
user_note_id required | User Note ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "390",
"type": "user_note",
"attributes": {
"permissions": null,
"content": "Update note test",
"author": "Enrico Schultz",
"author_role": "employee",
"type": "UserNote",
"created_at": "2023-01-30T16:21:55+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "9a6fb25b-f1ab-4f48-aed4-06688471cf94",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Shows time tracking note
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/29/notes?filter[type]=eq%3ASystemNote
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/notes
Parameters
filter: {"type"=>"eq:SystemNote"}
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | Time Tracking ID |
permissions | User Permissions |
filter | Type filter |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "381",
"type": "note",
"attributes": {
"permissions": null,
"content": "time tracking has been created.",
"type": "SystemNote",
"created_at": "2023-01-30T12:21:54+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
}
],
"meta": {
"request_id": "2d800d24-e000-4bd1-923c-408b1a965d38",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
List of time tracking notes
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/27/notes
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/notes
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | Time Tracking ID |
permissions | User Permissions |
filter | Type filter |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "377",
"type": "note",
"attributes": {
"permissions": null,
"content": "time tracking has been created.",
"type": "SystemNote",
"created_at": "2023-01-30T12:21:54+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
},
{
"id": "378",
"type": "note",
"attributes": {
"permissions": null,
"content": "This is a note",
"author": "Freiherr Sami Grams",
"author_role": "admin",
"type": "UserNote",
"created_at": "2023-01-30T16:21:54+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
}
],
"meta": {
"request_id": "b640f31f-413a-40d8-ad9c-f2aaa0499496",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2
}
}
Delete note of time tracking
Request
Endpoint
DELETE /api/v3/workspaces/1028/time_trackings/25/notes/373
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/notes/:user_note_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID/Company ID |
time_tracking_id required | Time Tracking ID |
user_note_id required | User Note ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "373",
"type": "user_note",
"attributes": {
"permissions": null,
"content": "This is a note",
"author": "Enrico Schultz",
"author_role": "employee",
"type": "UserNote",
"created_at": "2023-01-30T16:21:53+01:00"
},
"relationships": {
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "ad499c19-b2ab-49e8-b37a-d5ed4f0ff802",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Timetrackings/Signatures
List of signatures
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/41/signatures
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/signatures
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | Time tracking ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "1",
"type": "signature",
"attributes": {
"title": "start",
"image_file_name": "start_signature",
"image_content_type": "image/jpeg",
"image_url": "/system/signatures/images/000/000/001/medium/start_signature?1675077718",
"created_at": "2023-01-30T12:21:58+01:00",
"image_updated_at": "2023-01-30T12:21:58+01:00"
}
}
],
"meta": {
"request_id": "42240f99-b55a-4769-8729-806a2fa89a1d",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
Timetrackings/Tags
Create time tracking tag
Request
Endpoint
POST /api/v3/workspaces/1028/time_trackings/143/tags
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/tags
Parameters
{
"data": {
"attributes": {
"title":"Schwarz",
"time_tracking_id":143
},
"type":"tag"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
time_tracking_id required | Time tracking ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "55",
"type": "tag",
"attributes": {
"title": "Schwarz",
"active": true,
"external_id": null,
"color": null
},
"relationships": {
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
},
"users": {
"data": [
]
}
}
},
"meta": {
"request_id": "70dea85c-5e3f-4b17-a563-1cc4587125a3",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
List of time tracking tags
Request
Endpoint
GET /api/v3/workspaces/1028/time_trackings/147/tags
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/time_trackings/:time_tracking_id/tags
Parameters
Name | Description |
---|---|
filter | Tag filter |
workspace_id required | Workspace ID |
time_tracking_id required | Time tracking ID associated to the tags |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "56",
"type": "tag",
"attributes": {
"title": "53-azure",
"active": true,
"external_id": null,
"color": null
},
"relationships": {
"workspace": {
"data": {
"id": "1098",
"type": "workspace"
}
},
"users": {
"data": [
]
}
}
}
],
"meta": {
"request_id": "57a6f3bf-0fc1-4ec0-85b3-c6d5e221fe3c",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
Workspaces
Create a workspace
Request
Endpoint
POST /api/v3/accounts/1026/workspaces
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/accounts/:account_id/workspaces
Parameters
{
"data": {
"type":"workspace",
"attributes": {
"name":"New Test Workspace",
"phone":"+441234567000",
"time_zone":"Berlin",
"locale":"de",
"external_id":"7",
"avatar":""
}
}
}
Name | Description |
---|---|
account_id required | Account ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1037",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "New Test Workspace",
"phone": "+441234567000",
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": "7",
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": null
},
"relationships": {
"areas": {
"data": [
]
}
}
},
"meta": {
"request_id": "d735f8ea-0cd0-46e9-8626-bcb5aba1c42f",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update workspace
Request
Endpoint
PATCH /api/v3/workspaces/1028
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id
Parameters
{
"data": {
"type":"workspace",
"attributes": {
"name":"New Name"
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1028",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "New Name",
"phone": null,
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": null,
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": null
},
"relationships": {
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
}
}
},
"meta": {
"request_id": "6cb4f4d4-c04a-4a97-9a32-3ddd5b63e52b",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
list of workspaces
Request
Endpoint
GET /api/v3/accounts/1026/workspaces?include=areas
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/accounts/:account_id/workspaces
Parameters
include: areas
Name | Description |
---|---|
account_id required | The ID of a account |
permissions | User Permissions |
include | Included relationships |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "1028",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "Company",
"phone": null,
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": null,
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": true,
"welcome_message": "Welcome to your Workspace!"
},
"relationships": {
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
}
}
}
],
"included": [
{
"id": "1028",
"type": "area",
"attributes": {
"permissions": null,
"name": "Lorenz vom Wollmann",
"status": "active",
"color": "#913D88",
"external_id": null,
"created_at": "2023-01-30T11:21:43Z",
"updated_at": "2023-01-30T11:21:43Z"
},
"relationships": {
"users": {
"data": [
{
"id": "40",
"type": "user"
},
{
"id": "42",
"type": "user"
},
{
"id": "43",
"type": "user"
}
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
}
],
"meta": {
"request_id": "8bc8e7fe-a41e-41f6-b1ac-473a71f7bb94",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1
}
}
Show workspace
Request
Endpoint
GET /api/v3/workspaces/1028?include=areas
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id
Parameters
include: areas
Name | Description |
---|---|
include | Relationships details |
workspace_id required | Workspace ID |
permissions | User Permissions |
include | Included relationships |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1028",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "Company",
"phone": null,
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": null,
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": true,
"welcome_message": "Welcome to your Workspace!"
},
"relationships": {
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
}
}
},
"meta": {
"request_id": "35a267be-e903-48a8-8e91-1e39817d789d",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
},
"included": [
{
"id": "1028",
"type": "area",
"attributes": {
"permissions": null,
"name": "Lorenz vom Wollmann",
"status": "active",
"color": "#913D88",
"external_id": null,
"created_at": "2023-01-30T11:21:43Z",
"updated_at": "2023-01-30T11:21:43Z"
},
"relationships": {
"users": {
"data": [
{
"id": "40",
"type": "user"
},
{
"id": "42",
"type": "user"
},
{
"id": "43",
"type": "user"
}
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
}
]
}
Delete workspace
Request
Endpoint
DELETE /api/v3/workspaces/1058
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1058",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "Company",
"phone": null,
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": null,
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": null
},
"relationships": {
"areas": {
"data": [
]
}
}
},
"meta": {
"request_id": "d370f2df-4bc9-40eb-b281-b32eebaaaa7b",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Workspaces/Absences
Create an absence
Request
Endpoint
POST /api/v3/workspaces/1028/absences
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/absences
Parameters
{
"data": {
"attributes": {
"charge_days_job_status":"",
"confirm_message":"",
"confirmed":"",
"confirmed_at":"",
"confirmed_by":"",
"created_by":"",
"days":0,
"ends_at":"2020-12-03T00:00:00+01:00",
"external_id":"",
"full_day":true,
"hours":8,
"import_id":"",
"outlook_id":"",
"secure_id":"",
"starts_at":"2020-12-02T00:00:00+01:00",
"title":"",
"use_custom_values":true,
"notes_attributes": [
{
"created_by":40,
"content":"note content"
}
],
"user_id":40,
"follower_ids":[100],
"absence_type_id":1028
},
"type":"absence"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "27",
"type": "absence",
"attributes": {
"permissions": null,
"title": "Holiday 1_759",
"hours": 0.0,
"days": 0.0,
"full_day": true,
"confirmation_status": "pending",
"confirmed": null,
"created_by": null,
"use_custom_values": false,
"external_id": "",
"confirm_message": "",
"attachments_count": 0,
"starts_at": "2020-12-01T23:00:00Z",
"ends_at": "2020-12-03T22:59:59Z",
"confirmed_at": null,
"created_at": "2023-01-30T11:22:52Z",
"updated_at": "2023-01-30T11:22:52Z",
"system_notes_count": 1,
"user_notes_count": 1
},
"relationships": {
"absence_type": {
"data": {
"id": "1028",
"type": "absence_type"
}
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"confirmed_by_user": {
"data": null
},
"followers": {
"data": [
{
"id": "100",
"type": "user_overview"
}
]
},
"notes": {
"data": [
{
"id": "515",
"type": "note"
},
{
"id": "516",
"type": "note"
}
]
},
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "536b94b6-e908-414f-96ed-d94490f866b5",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update an absence
Request
Endpoint
PATCH /api/v3/workspaces/1028/absences/62
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/absences/:absence_id
Parameters
{
"data": {
"type":"absence",
"attributes": {
"full_day":true,
"force_calc_custom_hours":true,
"hours":5.0,
"days":1.0,
"starts_at":"2023-01-30T00:00:00+01:00",
"ends_at":"2023-01-30T23:59:59+01:00",
"notes_attributes": [
{
"id":564,
"content":"new content"
},
{
"id":565,
"_destroy":true
}
]
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
absence_id required | Absence ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "62",
"type": "absence",
"attributes": {
"permissions": null,
"title": "Holiday 1_759",
"hours": 5.0,
"days": 1.0,
"full_day": true,
"confirmation_status": "pending",
"confirmed": null,
"created_by": null,
"use_custom_values": true,
"external_id": null,
"confirm_message": null,
"attachments_count": 0,
"starts_at": "2023-01-29T23:00:00Z",
"ends_at": "2023-01-30T22:59:59Z",
"confirmed_at": null,
"created_at": "2023-01-30T11:22:59Z",
"updated_at": "2023-01-30T11:22:59Z",
"system_notes_count": 3,
"user_notes_count": 1
},
"relationships": {
"absence_type": {
"data": {
"id": "1028",
"type": "absence_type"
}
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"confirmed_by_user": {
"data": null
},
"followers": {
"data": [
{
"id": "108",
"type": "user_overview"
},
{
"id": "109",
"type": "user_overview"
}
]
},
"notes": {
"data": [
{
"id": "563",
"type": "note"
},
{
"id": "566",
"type": "note"
},
{
"id": "564",
"type": "note"
},
{
"id": "567",
"type": "note"
}
]
},
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "93179555-9533-4141-926f-34c4a8ff1ab6",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
List of absences
Request
Endpoint
GET /api/v3/workspaces/1028/absences
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/absences
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
permissions | User Permissions |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "42",
"type": "absence",
"attributes": {
"permissions": null,
"title": "Holiday 1_759",
"hours": 0.0,
"days": 1.0,
"full_day": true,
"confirmation_status": "pending",
"confirmed": null,
"created_by": null,
"use_custom_values": false,
"external_id": null,
"confirm_message": null,
"attachments_count": 0,
"starts_at": "2023-01-29T23:00:00Z",
"ends_at": "2023-01-30T22:59:59Z",
"confirmed_at": null,
"created_at": "2023-01-30T11:22:56Z",
"updated_at": "2023-01-30T11:22:56Z",
"system_notes_count": 1,
"user_notes_count": 0
},
"relationships": {
"absence_type": {
"data": {
"id": "1028",
"type": "absence_type"
}
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"confirmed_by_user": {
"data": null
},
"followers": {
"data": [
]
},
"notes": {
"data": [
{
"id": "538",
"type": "note"
}
]
},
"attachments": {
"data": [
]
}
}
}
],
"meta": {
"request_id": "3be4fb74-0db3-4913-9521-f9b438b88804",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1,
"pending": 1,
"confirmed": 0,
"rejected": 0,
"total_days": 1.0,
"total_hours": 0.0
}
}
Show absence
Request
Endpoint
GET /api/v3/workspaces/1028/absences/59?include=absence_type&user
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/absences/:absence_id
Parameters
include: absence_type, user
Name | Description |
---|---|
include | Relationships details |
workspace_id required | Workspace ID |
absence_id required | Absence ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "59",
"type": "absence",
"attributes": {
"permissions": null,
"title": "Holiday 1_759",
"hours": 0.0,
"days": 1.0,
"full_day": true,
"confirmation_status": "confirmed",
"confirmed": true,
"created_by": null,
"use_custom_values": false,
"external_id": null,
"confirm_message": null,
"attachments_count": 1,
"starts_at": "2023-01-29T23:00:00Z",
"ends_at": "2023-01-30T22:59:59Z",
"confirmed_at": "2023-01-30T11:22:58Z",
"created_at": "2023-01-30T11:22:58Z",
"updated_at": "2023-01-30T11:22:59Z",
"system_notes_count": 1,
"user_notes_count": 1
},
"relationships": {
"absence_type": {
"data": {
"id": "1028",
"type": "absence_type"
}
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"confirmed_by_user": {
"data": null
},
"followers": {
"data": [
{
"id": "105",
"type": "user_overview"
}
]
},
"notes": {
"data": [
{
"id": "557",
"type": "note"
},
{
"id": "558",
"type": "note"
}
]
},
"attachments": {
"data": [
{
"id": "6",
"type": "attachment"
}
]
}
}
},
"meta": {
"request_id": "09df01ea-3bf8-4027-a607-2df5ae80ee46",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
},
"included": [
{
"id": "1028",
"type": "absence_type",
"attributes": {
"title": "Holiday 1_759",
"kind": "vacation"
}
},
{
"id": "40",
"type": "user_overview",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Enrico Schultz",
"abbreviation": null,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"status": "active"
}
}
]
}
Delete an absence
Request
Endpoint
DELETE /api/v3/workspaces/1028/absences/29
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/absences/:absence_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
absence_id required | Absence ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "29",
"type": "absence",
"attributes": {
"permissions": null,
"title": "Holiday 1_759",
"hours": 0.0,
"days": 2.0,
"full_day": true,
"confirmation_status": "pending",
"confirmed": null,
"created_by": null,
"use_custom_values": false,
"external_id": null,
"confirm_message": null,
"attachments_count": 0,
"starts_at": "2023-01-29T23:00:00Z",
"ends_at": "2023-01-31T22:59:59Z",
"confirmed_at": null,
"created_at": "2023-01-30T11:22:53Z",
"updated_at": "2023-01-30T11:22:53Z",
"system_notes_count": 0,
"user_notes_count": 0
},
"relationships": {
"absence_type": {
"data": {
"id": "1028",
"type": "absence_type"
}
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"confirmed_by_user": {
"data": null
},
"followers": {
"data": [
]
},
"notes": {
"data": [
]
},
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "8f434171-8638-46e6-a5a6-7fccb74670f0",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
creates bulk absences
Request
Endpoint
POST /api/v3/workspaces/1028/absences/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/absences/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"create",
"starts_at":"2022-05-02T00:00:00+01:00",
"ends_at":"2022-05-02T23:59:59+01:00",
"full_day":true,
"title":"bulk 1",
"absence_type_id":1089,
"user_ids":[40,41],
"notes_attributes": [
{
"created_by":40,
"content":"Sample note"
},
{
"created_by":41,
"content":"Another note"
}
],
"follower_ids":[40,41,42],
"force_calc_custom_hours":true
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
Confirm an absence
Request
Endpoint
POST /api/v3/workspaces/1028/absences/24/absences_confirmations
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/absences/:absence_id/absences_confirmations
Parameters
{
"include":"absence_type,user,confirmed_by_user"
}
Name | Description |
---|---|
include | Confirmed by user |
workspace_id required | Workspace ID |
absence_id required | Absence ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "24",
"type": "absence",
"attributes": {
"permissions": null,
"title": "Holiday 1_759",
"hours": 0.0,
"days": 1.0,
"full_day": true,
"confirmation_status": "confirmed",
"confirmed": true,
"created_by": null,
"use_custom_values": false,
"external_id": null,
"confirm_message": null,
"attachments_count": 0,
"starts_at": "2023-01-29T23:00:00Z",
"ends_at": "2023-01-30T22:59:59Z",
"confirmed_at": "2023-01-30T11:22:51Z",
"created_at": "2023-01-30T11:22:51Z",
"updated_at": "2023-01-30T11:22:51Z",
"system_notes_count": 2,
"user_notes_count": 0
},
"relationships": {
"absence_type": {
"data": {
"id": "1028",
"type": "absence_type"
}
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"confirmed_by_user": {
"data": {
"id": "39",
"type": "user_overview"
}
},
"followers": {
"data": [
]
},
"notes": {
"data": [
{
"id": "510",
"type": "note"
},
{
"id": "511",
"type": "note"
}
]
},
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "b4a4771d-b45e-4b24-bad4-cbf5e8ddf211",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Reject an absence
Request
Endpoint
POST /api/v3/workspaces/1028/absences/55/absences_rejections
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/absences/:absence_id/absences_rejections
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
absence_id required | Absence ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "55",
"type": "absence",
"attributes": {
"permissions": null,
"title": "Holiday 1_759",
"hours": 0.0,
"days": 1.0,
"full_day": true,
"confirmation_status": "pending",
"confirmed": null,
"created_by": null,
"use_custom_values": false,
"external_id": null,
"confirm_message": null,
"attachments_count": 0,
"starts_at": "2023-01-29T23:00:00Z",
"ends_at": "2023-01-30T22:59:59Z",
"confirmed_at": null,
"created_at": "2023-01-30T11:22:57Z",
"updated_at": "2023-01-30T11:22:58Z",
"system_notes_count": 2,
"user_notes_count": 0
},
"relationships": {
"absence_type": {
"data": {
"id": "1028",
"type": "absence_type"
}
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"confirmed_by_user": {
"data": null
},
"followers": {
"data": [
]
},
"notes": {
"data": [
{
"id": "551",
"type": "note"
},
{
"id": "552",
"type": "note"
}
]
},
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "f79d1512-889f-4df8-96e3-bd611ed53f75",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Reset an absence
Request
Endpoint
POST /api/v3/workspaces/1028/absences/57/absences_resettings
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/absences/:absence_id/absences_resettings
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
absence_id required | Absence ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "57",
"type": "absence",
"attributes": {
"permissions": null,
"title": "Holiday 1_759",
"hours": 0.0,
"days": 1.0,
"full_day": true,
"confirmation_status": "rejected",
"confirmed": false,
"created_by": null,
"use_custom_values": false,
"external_id": null,
"confirm_message": null,
"attachments_count": 0,
"starts_at": "2023-01-29T23:00:00Z",
"ends_at": "2023-01-30T22:59:59Z",
"confirmed_at": null,
"created_at": "2023-01-30T11:22:58Z",
"updated_at": "2023-01-30T11:22:58Z",
"system_notes_count": 2,
"user_notes_count": 0
},
"relationships": {
"absence_type": {
"data": {
"id": "1028",
"type": "absence_type"
}
},
"user": {
"data": {
"id": "40",
"type": "user_overview"
}
},
"confirmed_by_user": {
"data": null
},
"followers": {
"data": [
]
},
"notes": {
"data": [
{
"id": "554",
"type": "note"
},
{
"id": "555",
"type": "note"
}
]
},
"attachments": {
"data": [
]
}
}
},
"meta": {
"request_id": "8759b66e-d6a8-4f6a-a155-1b03c2156cb8",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Workspaces/AbsenceTypes
List of absence types
Request
Endpoint
GET /api/v3/workspaces/1028/absence_types
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/absence_types
Parameters
Name | Description |
---|---|
filter | Filter |
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "1028",
"type": "absence_type",
"attributes": {
"title": "Holiday 1_759",
"kind": "vacation"
}
},
{
"id": "1044",
"type": "absence_type",
"attributes": {
"title": "Holiday 17_582",
"kind": "vacation"
}
}
],
"meta": {
"request_id": "62d00d15-98d6-4472-9fe8-919c6a9142fb",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2
}
}
Workspaces/Areas
Create area
Request
Endpoint
POST /api/v3/workspaces/1028/areas
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/areas
Parameters
{
"data": {
"attributes": {
"color":"#A2DED0",
"name":"Example"
},
"type":"area"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "1030",
"type": "area",
"attributes": {
"permissions": null,
"name": "Example",
"status": "active",
"color": "#A2DED0",
"external_id": null,
"created_at": "2023-01-30T11:22:15Z",
"updated_at": "2023-01-30T11:22:15Z"
},
"relationships": {
"users": {
"data": [
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "c7eee767-5b83-4478-b8d6-770d9f5e53c7",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update area
Request
Endpoint
PATCH /api/v3/workspaces/1028/areas/1049
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/areas/:area_id
Parameters
{
"data": {
"attributes": {
"color":"#1abc9c",
"name":"Another name",
"user_ids":[40,39]
},
"type":"area"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
area_id required | Area ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1049",
"type": "area",
"attributes": {
"permissions": null,
"name": "Another name",
"status": "active",
"color": "#1abc9c",
"external_id": null,
"created_at": "2023-01-30T11:22:19Z",
"updated_at": "2023-01-30T11:22:19Z"
},
"relationships": {
"users": {
"data": [
{
"id": "40",
"type": "user"
},
{
"id": "39",
"type": "user"
}
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "841ddd74-2c96-401f-a420-ddd2d320e160",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
List of areas
Request
Endpoint
GET /api/v3/workspaces/1028/areas
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/areas
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
permissions | User Permissions |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "1028",
"type": "area",
"attributes": {
"permissions": null,
"name": "Lorenz vom Wollmann",
"status": "active",
"color": "#913D88",
"external_id": null,
"created_at": "2023-01-30T11:21:43Z",
"updated_at": "2023-01-30T11:21:43Z"
},
"relationships": {
"users": {
"data": [
{
"id": "40",
"type": "user"
},
{
"id": "42",
"type": "user"
},
{
"id": "43",
"type": "user"
}
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
{
"id": "1040",
"type": "area",
"attributes": {
"permissions": null,
"name": "Carlee Langosh",
"status": "active",
"color": "#f39c12",
"external_id": null,
"created_at": "2023-01-30T11:22:17Z",
"updated_at": "2023-01-30T11:22:17Z"
},
"relationships": {
"users": {
"data": [
{
"id": "40",
"type": "user"
}
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
}
],
"meta": {
"request_id": "ebc68b96-b2b8-4694-b701-d1dee6dd6363",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2,
"can_create_working_areas": false
}
}
Show area
Request
Endpoint
GET /api/v3/workspaces/1028/areas/1043?include=users&workspace
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/areas/:area_id
Parameters
include: users, workspace
Name | Description |
---|---|
include | Relationships details |
workspace_id required | Workspace ID |
area_id required | Area ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1043",
"type": "area",
"attributes": {
"permissions": null,
"name": "Rickie Hamill",
"status": "active",
"color": "#9b59b6",
"external_id": null,
"created_at": "2023-01-30T11:22:17Z",
"updated_at": "2023-01-30T11:22:17Z"
},
"relationships": {
"users": {
"data": [
{
"id": "40",
"type": "user"
}
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "17354dec-dc13-44aa-a296-da1ba6231e72",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
},
"included": [
{
"id": "40",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Enrico Schultz",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2022-12-30",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 8,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "17hs",
"locale": null,
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1028",
"type": "area"
},
{
"id": "1043",
"type": "area"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
},
{
"id": "1028",
"type": "workspace",
"attributes": {
"permissions": null,
"name": "Company",
"phone": null,
"time_zone": "Berlin",
"locale": "de",
"avatar": "/avatars/original/missing.png",
"external_id": null,
"allow_employees_edit_working_session_area": true,
"allow_employee_edit_punched_working_sessions": false,
"allow_employees_tag_working_sessions": false,
"checkin": null
},
"relationships": {
"areas": {
"data": [
{
"id": "1028",
"type": "area"
},
{
"id": "1043",
"type": "area"
}
]
}
}
}
]
}
Delete an area
Request
Endpoint
DELETE /api/v3/workspaces/1028/areas/1039
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/areas/:area_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
area_id required | Area ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1039",
"type": "area",
"attributes": {
"permissions": null,
"name": "foo",
"status": "active",
"color": "#f1c40f",
"external_id": null,
"created_at": "2023-01-30T11:22:16Z",
"updated_at": "2023-01-30T11:22:16Z"
},
"relationships": {
"users": {
"data": [
]
},
"areas": {
"data": [
]
},
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
}
}
},
"meta": {
"request_id": "900b3c5a-9623-426f-88f1-97663ec5013c",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Workspaces/Notifications
Delete notification
Request
Endpoint
DELETE /api/v3/workspaces/1028/notifications/4?type=trigger_warning
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/notifications/:notification_id?type=:type
Parameters
type: trigger_warning
Name | Description |
---|---|
workspace_id required | Workspace ID |
notification_id required | Notification ID |
type required | Notification type |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "4",
"type": "trigger_warning",
"attributes": {
"title": "Sample warning",
"message": "This is a sample warning message.",
"created_at": "2023-01-30T12:21:57+01:00",
"updated_at": "2023-01-30T12:21:57+01:00"
},
"relationships": {
"user": {
"data": {
"id": "40",
"type": "user"
}
},
"entity": {
"data": {
"id": "37",
"type": "time_tracking"
}
}
}
},
"meta": {
"request_id": "b2db5828-fbb2-4a1c-8c85-cc3b8579cb08",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Delete all notifications
Request
Endpoint
POST /api/v3/workspaces/1028/notifications/batch_actions
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/notifications/batch_actions
Parameters
{
"data": {
"attributes": {
"action":"destroy",
"all":true,
"ids":[11]
},
"type":"batch_action"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"meta": {
"message": "Batch action process is running"
}
}
List of notifications
Request
Endpoint
GET /api/v3/workspaces/1028/notifications
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/notifications
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "6",
"type": "trigger_warning",
"attributes": {
"title": "Sample warning",
"message": "This is a sample warning message.",
"created_at": "2023-01-30T12:21:57+01:00",
"updated_at": "2023-01-30T12:21:57+01:00"
},
"relationships": {
"user": {
"data": {
"id": "40",
"type": "user"
}
},
"entity": {
"data": {
"id": "39",
"type": "time_tracking"
}
}
}
},
{
"id": "7",
"type": "trigger_warning",
"attributes": {
"title": "Sample warning",
"message": "This is a sample warning message.",
"created_at": "2023-01-30T12:21:57+01:00",
"updated_at": "2023-01-30T12:21:57+01:00"
},
"relationships": {
"user": {
"data": {
"id": "40",
"type": "user"
}
},
"entity": {
"data": null
}
}
}
],
"meta": {
"request_id": "c719fdc8-94dd-4ea5-9e67-398ce00c4637",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2
}
}
Workspaces/Users
Create a user
Request
Endpoint
POST /api/v3/workspaces/1028/users
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/users
Parameters
{
"data": {
"type":"user",
"attributes": {
"username":"New user",
"email":"",
"tablet_pin":"",
"avatar":"",
"abbreviation":"user",
"hour_holidays":false,
"time_zone":"",
"initial_time_account":"",
"start_of_accounting":"",
"saldo_type":0,
"salary":"",
"hours_on_vacation_day":0,
"home_office":false,
"calc_holiday_options":"target",
"custom_holiday_hours":0.0,
"calc_vacation_options":"target",
"working_sessions_creator":false,
"staff_number":"",
"external_id":"",
"birthday":"",
"identifier_pin":"22z2",
"locale":"",
"time_tracking_method_id":"2",
"filter_ids":[],
"wage_type_ids":[],
"default_break_ids":[],
"absence_type_ids":[],
"public_holiday_ids":[],
"area_ids":[1052]
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "87",
"type": "user",
"attributes": {
"permissions": null,
"email": "",
"username": "New user",
"tablet_pin": "",
"abbreviation": "user",
"hour_holidays": false,
"time_zone": "",
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2023-01-01",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 4,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": "",
"external_id": "",
"birthday": null,
"identifier_pin": "22z2",
"locale": "",
"status": "active",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": null
},
"areas": {
"data": [
{
"id": "1052",
"type": "area"
}
]
},
"workspaces": {
"data": [
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
},
"meta": {
"request_id": "2cb0009b-4801-4627-bdc9-93ccb5ebf04a",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update user
Request
Endpoint
PATCH /api/v3/workspaces/1028/users/40
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/users/:user_id
Parameters
{
"data": {
"type":"user",
"attributes": {
"username":"Updated Name",
"checkin_complete":true,
"time_tracking_method_id":"3",
"area_ids":["1057"],
"role_ids":["2","3"],
"tag_ids":["36"]
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "40",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Updated Name",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": true,
"start_of_accounting": "2022-12-30",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 8,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "17hs",
"locale": null,
"status": "active",
"assumed_role": "admin",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1057",
"type": "area"
}
]
},
"roles": {
"data": [
{
"id": "2",
"type": "role"
},
{
"id": "3",
"type": "role"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
{
"id": "36",
"type": "tag"
}
]
},
"custom_field_values": {
"data": [
]
},
"last_action": {
"data": null
}
}
},
"meta": {
"request_id": "87a6d546-82a3-4350-b3c3-39f019ce3498",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Show specific user
Request
Endpoint
GET /api/v3/workspaces/1028/users/40?permissions=update&destroy&update_account_admin_role
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id
Parameters
permissions: update, destroy, update_account_admin_role
Name | Description |
---|---|
permissions | User Permissions |
fields | Only return specfic attributes |
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "40",
"type": "user",
"attributes": {
"permissions": {
"update": true,
"destroy": false,
"update_account_admin_role": false
},
"email": "[email protected]",
"username": "Enrico Schultz",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2022-12-30",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 8,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "17hs",
"locale": null,
"status": "active",
"assumed_role": "employee",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
},
"roles": {
"data": [
{
"id": "1",
"type": "role"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
},
"last_action": {
"data": null
}
}
},
"meta": {
"request_id": "fa5dda2b-9089-4a10-be45-4385883c19e2",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Delete a user
Request
Endpoint
DELETE /api/v3/workspaces/1028/users/90
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/users/:user_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
403 Forbidden
{
"errors": [
{
"status": "forbidden",
"source": {
"pointer": "base"
},
"title": "You are not authorized to perform this action."
}
]
}
Fetch current user
Request
Endpoint
GET /api/v3/workspaces/1028/users/me
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/me
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "39",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Freiherr Sami Grams",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2023-01-01",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 1,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "86re",
"locale": null,
"status": "active",
"assumed_role": "admin",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
]
},
"roles": {
"data": [
{
"id": "2",
"type": "role"
},
{
"id": "3",
"type": "role"
},
{
"id": "4",
"type": "role"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
},
"last_action": {
"data": null
}
}
},
"meta": {
"request_id": "20fba862-01b1-4819-b5ae-780dbb4b2c99",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
List of evaluations of user
Request
Endpoint
GET /api/v3/workspaces/1028/users/1123/evaluations
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/evalautions
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
permissions | User Permissions |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "15254",
"type": "evaluation",
"attributes": {
"day": "2021-06-01T00:00:00",
"target": 8.0,
"plan": 0.0,
"actual": 0.0,
"absent": 0.0,
"difference": -8.0,
"compensation": 0.0,
"public_holiday": false,
"vacation_title": null,
"current_balance": -8.0,
"absent_calc": 0.0,
"overlapping_absence": false,
"past": true,
"day_time_trackings_duration": 0
}
},
]
"meta": {
"request_id": "ebc68b96-b2b8-4694-b701-d1dee6dd6363",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2,
"can_create_working_areas": false
}
}
Show evaluations
Request
Endpoint
GET /api/v3/workspaces/1028/users/1043/evaluations/1902
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/evaluations/:evaluation_id
Parameters
Name | Description |
---|---|
include | Relationships details |
workspace_id required | Workspace ID |
user_id required | User ID |
evaluation_id required | Evaluation ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "15254",
"type": "evaluation",
"attributes": {
"day": "2021-06-01T00:00:00",
"target": 8.0,
"plan": 0.0,
"actual": 0.0,
"absent": 0.0,
"difference": -8.0,
"compensation": 0.0,
"public_holiday": false,
"vacation_title": null,
"current_balance": -8.0,
"absent_calc": 0.0,
"overlapping_absence": false,
"past": true,
"day_time_trackings_duration": 0
}
},
"meta": {
"request_id": "99b65409-c409-4178-8721-4fd59948b380",
"git_commit": "d8d0eeb673a5c3235030bcbe8c0562fc0f5c5d2c"
}
}
Update evaluations
Request
Endpoint
PATCH /api/v3/workspaces/1028/users/1049/evaluations/1902
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/users/:user_id/evaluations/:evaluation_id
Parameters
{
"data": {
"type": "evaluation",
"attributes": {
"compensation": 5.0,
"absent_calc": 10.0
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
evaluation_id required | Evaluation ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "15254",
"type": "evaluation",
"attributes": {
"day": "2021-06-01T00:00:00",
"target": 8.0,
"plan": 0.0,
"actual": 0.0,
"absent": 0.0,
"difference": -8.0,
"compensation": 0.0,
"public_holiday": false,
"vacation_title": null,
"current_balance": -8.0,
"absent_calc": 0.0,
"overlapping_absence": false,
"past": true,
"day_time_trackings_duration": 0
}
},
"meta": {
"request_id": "96ac8f74-e338-44e3-b2a9-71e809e7c65a",
"git_commit": "d8d0eeb673a5c3235030bcbe8c0562fc0f5c5d2c"
}
}
Workspaces/Features
List of active modules
Request
Endpoint
GET /api/v3/workspaces/1028/features
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/features
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": [
{
"id": "75641c8a-8ca6-11eb-8dcd-0242ac130003 ",
"type": "feature",
"attributes": {
"hint": "WorkspaceUser",
"permissions": {
"read_index": true,
"create_workspace_users": true
}
}
},
{
"id": "95e6db1c-a1dc-4f3b-ad6a-a2651c59ca81",
"type": "feature",
"attributes": {
"hint": "Absence",
"permissions": {
"read_index": true,
"create_absences": true
}
}
},
{
"id": "ad91901b-4e09-4c74-8c91-87daf1058e35",
"type": "feature",
"attributes": {
"hint": "TimeTracking",
"permissions": {
"use_browser_punch_clock": false,
"read_index": true,
"create_time_tracking": true
}
}
},
{
"id": "cfb7843c-377f-4803-9304-b26b7bc212be",
"type": "feature",
"attributes": {
"hint": "Workflow",
"permissions": {
"update": true
}
}
},
{
"id": "46e419fd-3e45-44fa-95e2-14372664d4ee",
"type": "feature",
"attributes": {
"hint": "Evaluation",
"permissions": {
"update": true
}
}
},
{
"id": "3d4b9365-1175-46c2-b7c1-2f1c0242699e",
"type": "feature",
"attributes": {
"hint": "Export",
"permissions": {
"read_index": true,
"create_export": true
}
}
},
{
"id": "0792c2f7-b90c-4db8-8d79-e9c65d4608cd",
"type": "feature",
"attributes": {
"hint": "Internationalization",
"permissions": {
"update": true
}
}
},
{
"id": "69303d65-8a39-44f9-b8bc-8bc993520e91",
"type": "feature",
"attributes": {
"hint": "EmployeeSegmentation",
"permissions": {
"update": true
}
}
},
{
"id": "0fb78c7f-1ea6-4f0a-8cb4-7a048f5f17ee",
"type": "feature",
"attributes": {
"hint": "UserSkill",
"permissions": {
"update": true
}
}
},
{
"id": "7045d096-b234-4793-861c-c813d0eae747",
"type": "feature",
"attributes": {
"hint": "Archive",
"permissions": {
"update": true
}
}
},
{
"id": "54a59364-a0f9-4235-92c9-400bb675c23a",
"type": "feature",
"attributes": {
"hint": "UserSpecificPause",
"permissions": {
"update": true
}
}
},
{
"id": "98a2b423-fefa-4d55-afb7-ffa52a0fee6d",
"type": "feature",
"attributes": {
"hint": "WorkSchedule",
"permissions": {
"update": true
}
}
},
{
"id": "8bc5ba1f-31c2-4ab2-9971-8e978ae87375",
"type": "feature",
"attributes": {
"hint": "RightRole",
"permissions": {
"update": true
}
}
},
{
"id": "4e776224-0e7d-4c59-a71e-4765be8799f3",
"type": "feature",
"attributes": {
"hint": "Import",
"permissions": {
"update": true
}
}
},
{
"id": "8c3989fc-6ded-4709-b545-18f1e1e0c8a8",
"type": "feature",
"attributes": {
"hint": "AccountExport",
"permissions": {
"update": true
}
}
},
{
"id": "d8541d49-f833-4ba3-97a9-45166bdf2214",
"type": "feature",
"attributes": {
"hint": "ExtendedCompanyUserRight",
"permissions": {
"update": true
}
}
},
{
"id": "636e3a90-6750-4a9b-a380-c80bc596bc11",
"type": "feature",
"attributes": {
"hint": "UserBasedPublicHoliday",
"permissions": {
"update": true
}
}
},
{
"id": "84d56e49-ec38-4907-9256-232591e5037e",
"type": "feature",
"attributes": {
"hint": "ExtendedAbsenceType",
"permissions": {
"update": true
}
}
},
{
"id": "6afcfc94-1ee0-4f13-baad-f7b4d4bd6037",
"type": "feature",
"attributes": {
"hint": "LocationTemplate",
"permissions": {
"update": true
}
}
},
{
"id": "f7fe1493-f279-45e2-95fa-f4095152f6be",
"type": "feature",
"attributes": {
"hint": "NetBreak",
"permissions": {
"update": true
}
}
},
{
"id": "bc656e6b-9e67-4ce6-be41-8a8e9421cde1",
"type": "feature",
"attributes": {
"hint": "VacationBan",
"permissions": {
"update": true
}
}
},
{
"id": "bb3b58e2-64a9-4fb2-bdc6-d258b7ace8eb",
"type": "feature",
"attributes": {
"hint": "AssignAutomatically",
"permissions": {
"update": true
}
}
},
{
"id": "d95e2100-7151-4aad-b5a5-589f0e1baca0",
"type": "feature",
"attributes": {
"hint": "Payroll",
"permissions": {
"update": true
}
}
},
{
"id": "d8ed7701-fea6-40f4-9363-8ecdc7e8a72f",
"type": "feature",
"attributes": {
"hint": "WageType",
"permissions": {
"update": true
}
}
},
{
"id": "65415889-67c6-48c0-97eb-9282314c0134",
"type": "feature",
"attributes": {
"hint": "Report",
"permissions": {
"read_index": true,
"create_report": true
}
}
},
{
"id": "a61e0ee6-6683-4f12-9335-fbd9adb287cc",
"type": "feature",
"attributes": {
"hint": "EmployeeReport",
"permissions": {
"update": true
}
}
},
{
"id": "fbac64c5-25bb-4ea6-8c2b-ad39c20f0d59",
"type": "feature",
"attributes": {
"hint": "FileTemplate",
"permissions": {
"update": true
}
}
},
{
"id": "688fb157-2cd9-4bfa-8d3e-15313d296b48",
"type": "feature",
"attributes": {
"hint": "Upload",
"permissions": {
"update": true
}
}
},
{
"id": "d19a2988-dc00-4658-9f6f-d58de840837a",
"type": "feature",
"attributes": {
"hint": "UploadIndex",
"permissions": {
"update": true
}
}
},
{
"id": "f5f46141-39d2-401b-bb98-d3d4a2bcaa3e",
"type": "feature",
"attributes": {
"hint": "AccountUser",
"permissions": {
"update": true
}
}
},
{
"id": "11a8c4c4-6796-42d2-bfd1-5370d11260a8",
"type": "feature",
"attributes": {
"hint": "Hr",
"permissions": {
"update": true
}
}
},
{
"id": "9d22cddf-255b-43ca-ad94-dc2814813546",
"type": "feature",
"attributes": {
"hint": "UserCheckin",
"permissions": {
"read": true
}
}
},
{
"id": "c614ad7b-8ecc-47d3-a441-061bb080a351",
"type": "feature",
"attributes": {
"hint": "CustomField",
"permissions": {
"update": true
}
}
},
{
"id": "b681e42a-6734-466b-a830-0367a103c147",
"type": "feature",
"attributes": {
"hint": "DataProfilesRole",
"permissions": {
"update": true
}
}
},
{
"id": "f189083b-d4b5-43d8-8413-486baac0d654",
"type": "feature",
"attributes": {
"hint": "Task",
"permissions": {
"update": true
}
}
},
{
"id": "d0ab51cc-31db-11ed-a261-0242ac120002",
"type": "feature",
"attributes": {
"hint": "PushNotification",
"permissions": {
"update": true
}
}
},
{
"id": "e0695ca2-5fe8-4795-b261-783ab5b1d218",
"type": "feature",
"attributes": {
"hint": "WorkingSessionActionsExport",
"permissions": {
"update": true
}
}
},
{
"id": "b11733fd-40d7-4e16-8352-ce84c6f36bd3",
"type": "feature",
"attributes": {
"hint": "HostedPage",
"permissions": {
"update": true
}
}
},
{
"id": "9b4e4cdb-74d9-46bd-a066-851716d7efcd",
"type": "feature",
"attributes": {
"hint": "ConfirmAssignment",
"permissions": {
"update": true
}
}
},
{
"id": "1aecd2d7-11cb-4b44-a0fc-bb912360b224",
"type": "feature",
"attributes": {
"hint": "Search",
"permissions": {
"update": true
}
}
},
{
"id": "06a89ee9-83ed-4a93-a414-7f9feb747b5b",
"type": "feature",
"attributes": {
"hint": "BrowserClockViaAction",
"permissions": {
"update": true
}
}
},
{
"id": "54c10d4e-758d-4bd0-b1e2-e4a01eb5b671",
"type": "feature",
"attributes": {
"hint": "WorkspaceSetting",
"permissions": {
"update": true
}
}
},
{
"id": "06a89ee9-83ed-4a93-a414-7f9feb747b5b",
"type": "feature",
"attributes": {
"hint": "BrowserClockViaAction",
"permissions": {
"update": true
}
}
},
{
"id": "957554f4-31db-11ed-a261-0242ac120002",
"type": "feature",
"attributes": {
"hint": "UserProfileNote",
"permissions": {
"update": true
}
}
},
{
"id": "a9528eb0-31db-11ed-a261-0242ac120002",
"type": "feature",
"attributes": {
"hint": "AdvancedPayrollExport",
"permissions": {
"update": true
}
}
},
{
"id": "d0ab51cc-31db-11ed-a261-0242ac120002",
"type": "feature",
"attributes": {
"hint": "PushNotification",
"permissions": {
"update": true
}
}
},
{
"id": "daed51c6-31db-11ed-a261-0242ac120002",
"type": "feature",
"attributes": {
"hint": "EmployeeReportsInUsersIndex",
"permissions": {
"update": true
}
}
},
{
"id": "e0695ca2-5fe8-4795-b261-783ab5b1d218",
"type": "feature",
"attributes": {
"hint": "WorkingSessionActionsExport",
"permissions": {
"update": true
}
}
},
{
"id": "e129c506-31db-11ed-a261-0242ac120002",
"type": "feature",
"attributes": {
"hint": "TaskGuest",
"permissions": {
"update": true
}
}
},
{
"id": "75641c8a-8ca6-11eb-8dcd-0242ac130003 ",
"type": "feature",
"attributes": {
"hint": "WorkspaceUser",
"permissions": {
"read_index": true,
"create_workspace_users": true
}
}
},
{
"id": "77062197-48e9-456f-ae97-0136f40a7585",
"type": "feature",
"attributes": {
"hint": "TargetHour",
"permissions": {
"create_custom_target_hours": false
}
}
},
{
"id": "5c398c9c-7985-4692-89d7-47dc894e3974",
"type": "feature",
"attributes": {
"hint": "Tag",
"permissions": {
"allow_employees_to_create_tags": false,
"allow_employees_to_create_time_tracking_tags": false
}
}
},
{
"id": "8fdca481-2a60-4b14-9add-cace7cb26422",
"type": "feature",
"attributes": {
"hint": "Profile",
"permissions": {
"free_subscription": false
}
}
},
{
"id": "b5464d2a-5a81-4959-8ece-02d34fa98b46",
"type": "feature",
"attributes": {
"hint": "General",
"permissions": {
"show_system_notes": true
}
}
},
{
"id": "6bea72b2-6b44-481c-b550-2c5b388d7d07",
"type": "feature",
"attributes": {
"hint": "Analytic",
"permissions": {
"allow_segment": true
}
}
},
{
"id": "51ea28ca-4b23-4436-8cd3-98535b0b99c8",
"type": "feature",
"attributes": {
"hint": "Calendar",
"permissions": {
"read_index": true
}
}
}
]
}
Workspaces/Roles
List of roles
Request
Endpoint
GET /api/v3/workspaces/1028/roles
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/roles
Parameters
None known.
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 4
200 OK
{
"data": [
{
"id": "1",
"type": "role",
"attributes": {
"name": "employee",
"localized_name": "Employee"
}
},
{
"id": "2",
"type": "role",
"attributes": {
"name": "working_area_admin",
"localized_name": "Area Admin"
}
},
{
"id": "3",
"type": "role",
"attributes": {
"name": "workspace_admin",
"localized_name": "Workspace Admin"
}
},
{
"id": "4",
"type": "role",
"attributes": {
"name": "account_admin",
"localized_name": "Account Admin"
}
}
],
"meta": {
"request_id": "7e4e748a-b552-4983-b7f7-661f9d6d7084",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 4
}
}
Workspaces/Searches
List of searches
Request
Endpoint
GET /api/v3/workspaces/1028/searches?filter[query]=ct:example&resources=User&Tag&Area&items=3
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/searches
Parameters
filter: {ct:example}
resources: User,Tag,Area
items: 3
Name | Description |
---|---|
filter required | Query filter param |
resources required | Resources to be searched |
items | Number of items |
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 3
Total-Pages: 1
Total-Count: 3
200 OK
{
"data": [
{
"id": "122035db-dcdc-4649-9359-0ef3bee7d3d5",
"type": "search",
"attributes": {
"resource_id": 81,
"resource_type": "User",
"title": "Bernard Example"
}
},
{
"id": "b2ed8df5-9485-4434-86fc-abf54480948f",
"type": "search",
"attributes": {
"resource_id": 1051,
"resource_type": "Area",
"title": "Example Room"
}
},
{
"id": "5cb01109-383c-42a5-a24b-334e4a8d24f5",
"type": "search",
"attributes": {
"resource_id": 3,
"resource_type": "Tag",
"title": "Example Tag"
}
}
],
"meta": {
"request_id": "56357046-3d51-4a28-9874-1c977ca96a25",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 3,
"total_pages": 1,
"total_count": 3
}
}
Workspaces/Shifts
List of shifts
Request
Endpoint
GET /api/v3/workspaces/1028/shifts
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/shifts
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 2
200 OK
{
"data": [
{
"id": "48",
"type": "event",
"attributes": {
"uuid": "408df777-98a2-4516-b582-1997dff5c62a",
"number_of_employees": 1,
"starts_at": "2022-02-03T04:00:00Z",
"ends_at": "2022-02-03T05:00:00Z",
"created_at": "2023-01-30T11:23:00Z",
"updated_at": "2023-01-30T11:23:00Z"
},
"relationships": {
"working_area": {
"data": {
"id": "1028",
"type": "area"
}
},
"recurrence": {
"data": null
},
"users": {
"data": [
]
},
"event_pauses": {
"data": [
]
}
}
},
{
"id": "47",
"type": "event",
"attributes": {
"uuid": "8d8fb3d7-229c-46bf-90da-9c6610715c5f",
"number_of_employees": 1,
"starts_at": "2022-02-03T04:00:00Z",
"ends_at": "2022-02-03T05:00:00Z",
"created_at": "2023-01-30T11:23:00Z",
"updated_at": "2023-01-30T11:23:00Z"
},
"relationships": {
"working_area": {
"data": {
"id": "1028",
"type": "area"
}
},
"recurrence": {
"data": null
},
"users": {
"data": [
]
},
"event_pauses": {
"data": [
]
}
}
}
],
"meta": {
"request_id": "7b80732b-b1db-4920-b471-5830cb7da103",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 2
}
}
Workspaces/SuggestedFollowers
List of followers
Request
Endpoint
GET /api/v3/workspaces/1028/suggested_followers
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/suggested_followers
Parameters
Name | Description |
---|---|
filter | Filter |
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 5
200 OK
{
"data": [
{
"id": "40",
"type": "user",
"attributes": {
"username": "Enrico Schultz"
}
},
{
"id": "41",
"type": "user",
"attributes": {
"username": "Fr. Ruben Plank"
}
},
{
"id": "39",
"type": "user",
"attributes": {
"username": "Freiherr Sami Grams"
}
},
{
"id": "42",
"type": "user",
"attributes": {
"username": "Jannes Scherer"
}
},
{
"id": "43",
"type": "user",
"attributes": {
"username": "Karina zu Pippig"
}
}
],
"meta": {
"request_id": "d48d017f-d819-417d-a562-36da19c29954",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 5
}
}
Workspaces/Summaries
List of summaries
Request
Endpoint
GET /api/v3/workspaces/1028/summaries?resource=TimeTracking&scopes=running,unconfirmed,confirmed
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/summaries
Parameters
resource: TimeTracking
scopes: running,unconfirmed,confirmed
Name | Description |
---|---|
workspace_id required | Workspace ID |
resource required | Resources to be searched |
scopes | Scopes to be applied |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 0
200 OK
{
"data": [
],
"meta": {
"request_id": "ac7efd14-1726-436b-942d-ccf4ec29b2c2",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 0,
"running": 0,
"unconfirmed": 0,
"confirmed": 0
}
}
Show summary
Request
Endpoint
GET /api/v3/workspaces/1028/users/112/records/summary
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/records/summary
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "112",
"type": "records_summary",
"attributes": {
"confirmed_total_overtime_in_sec": 0.0,
"total_overtime_in_sec": 0.0
}
},
"meta": {
"request_id": "5d0ee4d4-a8af-4f1c-bcaa-32c0df97bee5",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Workspaces/Tags
Create tag
Request
Endpoint
POST /api/v3/workspaces/1028/tags
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/tags
Parameters
{
"data": {
"type":"tag",
"attributes": {
"title":"erster Tag",
"active":true,
"external_id":"External ID",
"color":"#F5D76E",
"company_id":1028
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "8",
"type": "tag",
"attributes": {
"title": "erster Tag",
"active": true,
"external_id": "External ID",
"color": "#F5D76E"
},
"relationships": {
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
},
"users": {
"data": [
]
}
}
},
"meta": {
"request_id": "8dfe4f69-5fcf-43d3-aec3-12fe04b3569d",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update tag
Request
Endpoint
PUT /api/v3/workspaces/1028/tags/15
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PUT /api/v3/workspaces/:workspace_id/tags/:tag_id
Parameters
{
"data": {
"attributes": {
"title":"Updated_Tag"
},
"type":"tag"
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
tag_id required | Tag ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "15",
"type": "tag",
"attributes": {
"title": "Updated_Tag",
"active": true,
"external_id": null,
"color": null
},
"relationships": {
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
},
"users": {
"data": [
]
}
}
},
"meta": {
"request_id": "223e507a-e3f2-4595-beaf-da4daafaf759",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
List of tags
Request
Endpoint
GET /api/v3/workspaces/1028/tags
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/tags
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 1
200 OK
{
"data": [
{
"id": "10",
"type": "tag",
"attributes": {
"title": "8-puce",
"active": true,
"external_id": null,
"color": null
},
"relationships": {
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
},
"users": {
"data": [
]
}
}
}
],
"meta": {
"request_id": "9a581d5d-aeaa-4eaa-83ab-27b6a81eed50",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 1,
"can_modify_tags": false,
"can_create_tags": true
}
}
Show tag
Request
Endpoint
GET /api/v3/workspaces/1028/tags/13
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/tags/:tag_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
tag_id required | Tag ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "13",
"type": "tag",
"attributes": {
"title": "11-plum",
"active": true,
"external_id": null,
"color": null
},
"relationships": {
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
},
"users": {
"data": [
]
}
}
},
"meta": {
"request_id": "1a1cba25-023a-4569-b7d0-54fb74d260bf",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Delete Tag
Request
Endpoint
DELETE /api/v3/workspaces/1028/tags/9
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/tags/:tag_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
tag_id required | Tag ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "9",
"type": "tag",
"attributes": {
"title": "7-copper",
"active": true,
"external_id": null,
"color": null
},
"relationships": {
"workspace": {
"data": {
"id": "1028",
"type": "workspace"
}
},
"users": {
"data": [
]
}
}
},
"meta": {
"request_id": "1ae2a5d3-8b6e-4b43-a163-638df48fc03d",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Workspaces/TargetHours
Create Target Hour
Request
Endpoint
POST /api/v3/workspaces/1028/users/40/target_hours
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/users/:user_id/target_hours
Parameters
{
"data": {
"type":"target_hour",
"attributes": {
"rhythm_type":"weekly",
"start_date":"2022-01-20",
"is_week":true,
"week":40.0,
"is_month":false,
"month":0.0,
"target_limited":true,
"is_mon":true,
"mon":8.0,
"is_tue":true,
"tue":8.0,
"is_wed":true,
"wed":8.0,
"is_thu":true,
"thu":8.0,
"is_fri":true,
"fri":8.0,
"is_sat":false,
"sat":0.0,
"is_sun":false,
"sun":0.0,
"per_day":true
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
201 Created
{
"data": {
"id": "98",
"type": "target_hour",
"attributes": {
"permissions": null,
"rhythm_type": "weekly",
"start_date": "2022-01-20",
"end_date": "2022-12-31",
"target_limited": true,
"reset_confirmed_absences": null,
"total_hours": 40.0,
"updated_by": "Freiherr Sami Grams",
"is_week": true,
"is_month": false,
"is_mon": true,
"mon": 8.0,
"is_tue": true,
"tue": 8.0,
"is_wed": true,
"wed": 8.0,
"is_thu": true,
"thu": 8.0,
"is_fri": true,
"fri": 8.0,
"is_sat": false,
"sat": 0.0,
"is_sun": false,
"sun": 0.0,
"per_day": true
}
},
"meta": {
"request_id": "7ddaf818-b89d-47c2-8ecf-600baf5b15ff",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update target hour
Request
Endpoint
PATCH /api/v3/workspaces/1028/users/40/target_hours/111
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/users/:user_id/target_hours/:target_hour_id
Parameters
{
"data": {
"type":"target_hour",
"attributes": {
"rhythm_type":"weekly",
"start_date":"2022-02-21",
"is_week":true,
"week":20.0,
"is_month":false,
"month":0.0,
"target_limited":true,
"is_mon":true,
"mon":4.0,
"is_tue":true,
"tue":5.0,
"is_wed":true,
"wed":3.0,
"is_thu":true,
"thu":6.0,
"is_fri":true,
"fri":2.0,
"is_sat":false,
"sat":0.0,
"is_sun":false,
"sun":0.0
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
target_hour_id required | Target Hour ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "111",
"type": "target_hour",
"attributes": {
"permissions": null,
"rhythm_type": "weekly",
"start_date": "2022-02-21",
"end_date": "2022-12-31",
"target_limited": true,
"reset_confirmed_absences": null,
"total_hours": 20.0,
"updated_by": "Freiherr Sami Grams",
"is_week": true,
"is_month": false,
"is_mon": true,
"mon": 4.0,
"is_tue": true,
"tue": 5.0,
"is_wed": true,
"wed": 3.0,
"is_thu": true,
"thu": 6.0,
"is_fri": true,
"fri": 2.0,
"is_sat": false,
"sat": 0.0,
"is_sun": false,
"sun": 0.0,
"per_day": false
}
},
"meta": {
"request_id": "f480b15d-16e6-4fe3-a437-7c9bb046b463",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
List of target hours
Request
Endpoint
GET /api/v3/workspaces/1028/users/40/target_hours
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/target_hours
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 3
200 OK
{
"data": [
{
"id": "40",
"type": "target_hour",
"attributes": {
"permissions": null,
"rhythm_type": "weekly",
"start_date": "2023-01-01",
"end_date": null,
"target_limited": false,
"reset_confirmed_absences": null,
"total_hours": 40.0,
"updated_by": null,
"is_week": true,
"is_month": false,
"is_mon": true,
"mon": 8.0,
"is_tue": true,
"tue": 8.0,
"is_wed": true,
"wed": 8.0,
"is_thu": true,
"thu": 8.0,
"is_fri": true,
"fri": 8.0,
"is_sat": false,
"sat": 0.0,
"is_sun": false,
"sun": 0.0,
"per_day": false
}
},
{
"id": "105",
"type": "target_hour",
"attributes": {
"permissions": null,
"rhythm_type": "weekly",
"start_date": "2022-01-20",
"end_date": "2022-06-20",
"target_limited": false,
"reset_confirmed_absences": null,
"total_hours": 40.0,
"updated_by": null,
"is_week": true,
"is_month": false,
"is_mon": true,
"mon": 8.0,
"is_tue": true,
"tue": 8.0,
"is_wed": true,
"wed": 8.0,
"is_thu": true,
"thu": 8.0,
"is_fri": true,
"fri": 8.0,
"is_sat": false,
"sat": 0.0,
"is_sun": false,
"sun": 0.0,
"per_day": false
}
},
{
"id": "106",
"type": "target_hour",
"attributes": {
"permissions": null,
"rhythm_type": "free",
"start_date": "2022-06-21",
"end_date": "2022-12-31",
"target_limited": false,
"reset_confirmed_absences": null,
"total_hours": 8.0,
"updated_by": "Freiherr Sami Grams",
"target_working_days": [
{
"id": "3",
"day_type": "workday",
"hours": 8.0
},
{
"id": "4",
"day_type": "freeday",
"hours": 0.0
}
]
}
}
],
"meta": {
"request_id": "a5392f72-09ee-4edd-9b8d-6c770dbc5750",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 3,
"can_create_target_hours": true,
"last_updated_at": "2023-01-30T12:22:45+01:00",
"last_updated_by": "Freiherr Sami Grams"
}
}
Show target hour
Request
Endpoint
GET /api/v3/workspaces/1028/users/40/target_hours/109
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/target_hours/:target_hour_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
target_hour_id required | Target Hour ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "109",
"type": "target_hour",
"attributes": {
"permissions": null,
"rhythm_type": "weekly",
"start_date": "2022-01-20",
"end_date": "2022-12-31",
"target_limited": false,
"reset_confirmed_absences": null,
"total_hours": 40.0,
"updated_by": null,
"is_week": true,
"is_month": false,
"is_mon": true,
"mon": 8.0,
"is_tue": true,
"tue": 8.0,
"is_wed": true,
"wed": 8.0,
"is_thu": true,
"thu": 8.0,
"is_fri": true,
"fri": 8.0,
"is_sat": false,
"sat": 0.0,
"is_sun": false,
"sun": 0.0,
"per_day": false
}
},
"meta": {
"request_id": "ed7a06a0-7387-40a1-a90a-104de8f6fa0d",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Delete Target Hour
Request
Endpoint
DELETE /api/v3/workspaces/1028/users/40/target_hours/101
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/users/:user_id/target_hours/:target_hour_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
target_hour_id required | Target Hour ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "101",
"type": "target_hour",
"attributes": {
"permissions": null,
"rhythm_type": "weekly",
"start_date": "2022-01-21",
"end_date": "2022-12-31",
"target_limited": false,
"reset_confirmed_absences": null,
"total_hours": 40.0,
"updated_by": null,
"is_week": true,
"is_month": false,
"is_mon": true,
"mon": 8.0,
"is_tue": true,
"tue": 8.0,
"is_wed": true,
"wed": 8.0,
"is_thu": true,
"thu": 8.0,
"is_fri": true,
"fri": 8.0,
"is_sat": false,
"sat": 0.0,
"is_sun": false,
"sun": 0.0,
"per_day": false
}
},
"meta": {
"request_id": "633abf40-f678-4eea-af1d-b09baf5816a4",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Workspaces/User/Status
Activate user
Request
Endpoint
PATCH /api/v3/workspaces/1028/users/40/user_status
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/users/:user_id/user_status
Parameters
{
"data": {
"type":"user",
"attributes": {
"status":"active"
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "40",
"type": "user",
"attributes": {
"permissions": null,
"email": "[email protected]",
"username": "Enrico Schultz",
"tablet_pin": null,
"abbreviation": null,
"hour_holidays": false,
"time_zone": null,
"initial_time_account": 0.0,
"checkin_complete": null,
"start_of_accounting": "2022-12-30",
"saldo_type": 0,
"salary": 0.0,
"recognition_color_variant": 8,
"hours_on_vacation_day": 0.0,
"home_office": false,
"calc_holiday_options": "target",
"custom_holiday_hours": 0.0,
"calc_vacation_options": "target",
"working_sessions_creator": false,
"staff_number": null,
"external_id": null,
"birthday": null,
"identifier_pin": "17hs",
"locale": null,
"status": "active",
"assumed_role": "employee",
"running_time_tracking": null,
"remaining_vacation_days_this_year": 0,
"avatar": "https://app.papershift.com/assets/dudegirl.png",
"avatar_thumb_url": "https://app.papershift.com/assets/dudegirl.png",
"avatar_medium_url": "https://app.papershift.com/assets/dudegirl.png"
},
"relationships": {
"account": {
"data": {
"id": "1026",
"type": "account"
}
},
"areas": {
"data": [
{
"id": "1028",
"type": "area"
}
]
},
"roles": {
"data": [
{
"id": "1",
"type": "role"
}
]
},
"workspaces": {
"data": [
{
"id": "1028",
"type": "workspace"
}
]
},
"current_absence": {
"data": null
},
"absence_types": {
"data": [
{
"id": "1028",
"type": "absence_type"
}
]
},
"tags": {
"data": [
]
},
"custom_field_values": {
"data": [
]
},
"last_action": {
"data": null
}
}
},
"meta": {
"request_id": "44e0c4a9-8d06-429b-8a77-c2cf0bc90487",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Workspaces/Vacations
List vacations
Request
Endpoint
GET /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": [
{
"id": "12",
"type": "vacation_time",
"attributes": {
"starts_at": "2023-01-01T00:00:00",
"ends_at": "2027-12-01T00:00:00",
"planned_days": 1300.0,
"spent_days": 0.0,
"expires": true,
"title": "holidays",
"transfer_remaining": false,
"end_of_transfer_period": "2024-03-31T00:00:00",
"transferred_days": 0.0,
"remaining_days": 1300.0,
"status": "expires",
"transferred_to": null
}
}
],
"meta": {
"request_id": "a3223f355f9936cf755d871ea3906d93",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 30,
"total_pages": 1,
"total_count": 1,
"total_planned": 1300.0,
"total_spent": 0.0,
"total_transferred": 0.0,
"total_remaining": 1300.0
}
}
Create vacation
Request
Endpoint
POST /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times
Authorization: Bearer YOUR_TOKEN_HERE
POST /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times
Parameters
{
"data": {
"type": "vacation_time",
"attributes": {
"title": "annual quota",
"starts_at": "2024-01-01T00:00:00+01:00",
"ends_at": "2024-12-31T23:59:59+01:00",
"planned_days": "28",
"transfer_remaining": false,
"end_of_transfer_period": "2025-03-31T00:00:00+02:00",
"expires": true
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
title required | Title |
starts_at required | Start Date |
ends_at required | End Date |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "123",
"type": "vacation_time",
"attributes": {
"starts_at": "2024-01-01T00:00:00",
"ends_at": "2024-12-31T00:00:00",
"planned_days": 28.0,
"spent_days": 0.0,
"expires": true,
"title": "annual quota",
"transfer_remaining": false,
"end_of_transfer_period": "2025-03-31T00:00:00",
"transferred_days": 0.0,
"remaining_days": 28.0,
"status": "expires",
"transferred_to": null
}
},
"meta": {
"request_id": "5f2122acc72e7224569d625df83da295d",
"git_commit": "5f2122acdbqi9ehg298n23du2b9832995d"
}
}```
Update vacation
Request
Endpoint
PATCH /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times/:vacation_id
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times/:vacation_id
Parameters
{
"data": {
"type": "vacation_time",
"attributes": {
"title": "annual quota",
"starts_at": "2024-01-01T00:00:00+01:00",
"ends_at": "2024-12-31T23:59:59+01:00",
"planned_days": "28",
"transfer_remaining": false,
"end_of_transfer_period": "2025-03-31T00:00:00+02:00",
"expires": true
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
vacation_id required | Vacation ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "123",
"type": "vacation_time",
"attributes": {
"starts_at": "2024-01-01T00:00:00",
"ends_at": "2024-12-31T00:00:00",
"planned_days": 28.0,
"spent_days": 0.0,
"expires": true,
"title": "annual quota",
"transfer_remaining": false,
"end_of_transfer_period": "2025-03-31T00:00:00",
"transferred_days": 0.0,
"remaining_days": 28.0,
"status": "expires",
"transferred_to": null
}
},
"meta": {
"request_id": "5f2122acc72e7224569d625df83da295d",
"git_commit": "5f2122acdbqi9ehg298n23du2b9832995d"
}
}```
Delete vacation
Request
Endpoint
DELETE /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times/:vacation_id
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times/:vacation_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
vacation_id required | Vacation ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "123",
"type": "vacation_time",
"attributes": {
"starts_at": "2024-01-01T00:00:00",
"ends_at": "2024-12-31T00:00:00",
"planned_days": 28.0,
"spent_days": 0.0,
"expires": true,
"title": "annual quota",
"transfer_remaining": false,
"end_of_transfer_period": "2025-03-31T00:00:00",
"transferred_days": 0.0,
"remaining_days": 28.0,
"status": "expires",
"transferred_to": null
}
},
"meta": {
"request_id": "5f2122acc72e7224569d625df83da295d",
"git_commit": "5f2122acdbqi9ehg298n23du2b9832995d"
}
}
Show vacation
Request
Endpoint
GET /api/v3/workspaces/:workspace_id/users/:user_id/vacations/:vacation_id
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/vacation_times/:vacation_id
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
vacation_id required | Vacation ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "123",
"type": "vacation_time",
"attributes": {
"starts_at": "2023-01-01T00:00:00",
"ends_at": "2023-12-31T00:00:00",
"planned_days": 4121.0,
"spent_days": 0.0,
"expires": true,
"title": "Urlaub",
"transfer_remaining": true,
"end_of_transfer_period": "2024-03-31T00:00:00",
"transferred_days": 4121.0,
"remaining_days": 0.0,
"status": "used",
"transferred_to": 4811
}
},
"meta": {
"request_id": "054e23ed4496668af5d5b10ad5a7340f",
"git_commit": "098765456789878af5d5b10ad5a7340f"
}
}
Vacation Summary
Request
Endpoint
GET /api/v3/workspaces/:workspace_id/users/:user_id/vacations/summary
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/vacations/summary
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "40",
"type": "vacation_summary",
"attributes": {
"planned_vacation_days_this_year": 20.0,
"remaining_vacation_days_this_year": 10.5
}
},
"meta": {
"request_id": "a4136326-b706-4590-aac7-f7cb184864ba",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Users/DataProfiles
Show data profile
Request
Endpoint
GET /api/v3/workspaces/1028/users/40/data_profiles/16?include=custom_fields&custom_field_values
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/data_profiles/:id
Parameters
include: custom_fields,custom_field_values
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
id required | Data Profile ID |
include | Relationships details |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "16",
"type": "data_profile",
"attributes": {
"permissions": null,
"title": "Data profile 5_547",
"position": 0,
"user_checkin": null,
"enabled": true
},
"relationships": {
"custom_fields": {
"data": [
]
},
"custom_field_values": {
"data": [
]
}
}
},
"meta": {
"request_id": "538b9666-753c-45dd-ad44-bd80b8cdf349",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
},
"included": [
]
}
Update data profile
Request
Endpoint
PATCH /api/v3/workspaces/1028/users/40/data_profiles/22
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/users/:user_id/data_profiles/:id
Parameters
{
"data": {
"type":"data_profile",
"attributes": {
"custom_field_values_attributes": [
{
"custom_field_id":"234",
"data_type":"string",
"value":"Augustus Ernser"
},
{
"custom_field_id":"235",
"data_type":"float",
"value":"18.53"
},
{
"custom_field_id":"236",
"data_type":"boolean",
"value":"true"
}
]
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
id required | Data Profile ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "22",
"type": "data_profile",
"attributes": {
"permissions": null,
"title": "Data profile 11_214",
"position": 0,
"user_checkin": null,
"enabled": true
},
"relationships": {
"custom_fields": {
"data": [
{
"id": "239",
"type": "custom_field"
},
{
"id": "238",
"type": "custom_field"
},
{
"id": "237",
"type": "custom_field"
},
{
"id": "236",
"type": "custom_field"
},
{
"id": "235",
"type": "custom_field"
},
{
"id": "234",
"type": "custom_field"
}
]
}
}
},
"meta": {
"request_id": "8dc94491-c085-4ee9-bec3-ee62166dcb3a",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Users/Preferences
List of preferences
Request
Endpoint
GET /api/v3/users/40/preferences
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/users/:user_id/preferences
Parameters
Name | Description |
---|---|
user_id required | User Id |
Response
Content-Type: application/json; charset=utf-8
Current-Page: 1
Page-Items: 20
Total-Pages: 1
Total-Count: 3
200 OK
{
"data": [
{
"id": "2",
"type": "preference",
"attributes": {
"key": "absence_list",
"value": {
"days": true,
"info": true,
"tags": true,
"type": true,
"areas": true,
"dates": true,
"hours": true,
"status": true,
"employee": true,
"confirmed_by": true
}
}
},
{
"id": "3",
"type": "preference",
"attributes": {
"key": "employee_list",
"value": {
"tags": true,
"areas": true,
"email": true,
"roles": true,
"status": true,
"username": true,
"workspace": true,
"custom_field": true
}
}
},
{
"id": "4",
"type": "preference",
"attributes": {
"key": "time_tracking_list",
"value": {
"days": true,
"tags": true,
"type": true,
"dates": true,
"employee": true
}
}
}
],
"meta": {
"request_id": "f68300db-4d6f-4383-82ad-5593c6c1aa01",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6",
"link": 0,
"current_page": 1,
"page_items": 20,
"total_pages": 1,
"total_count": 3
}
}
Destroy preference
Request
Endpoint
DELETE /api/v3/users/40/preferences/1
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
DELETE /api/v3/users/:user_id/preferences/:id
Parameters
None known.
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "1",
"type": "preference",
"attributes": {
"key": "employee_list",
"value": {
"tags": true,
"areas": true,
"email": true,
"roles": true,
"status": true,
"username": true,
"workspace": true
}
}
},
"meta": {
"request_id": "544bb60d-447d-41ed-8024-565f3f36a88c",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Update a preference
Request
Endpoint
PATCH /api/v3/users/40/preferences/5
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/users/:user_id/preferences/:id
Parameters
{
"data": {
"type":"preference",
"attributes": {
"value": {
"tags":false,
"email":false,
"roles":true,
"status":false,
"username":true,
"workspace":true,
"areas":true,
"custom_key":true
}
}
}
}
None known.
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "5",
"type": "preference",
"attributes": {
"key": "employee_list",
"value": {
"tags": false,
"email": false,
"roles": true,
"status": false,
"username": true,
"workspace": true,
"areas": true,
"custom_key": true
}
}
},
"meta": {
"request_id": "8fbdb0c5-b1e3-47db-bcfd-2aaf99b59499",
"git_commit": "7b76d14af1ad08fe9054f001812710db546da7c6"
}
}
Users/ContractSettings
Show contract setting
Request
Endpoint
GET /api/v3/workspaces/1028/users/112/contract_settings
Authorization: Bearer YOUR_TOKEN_HERE
GET /api/v3/workspaces/:workspace_id/users/:user_id/contract_settings
Parameters
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": "121",
"type": "contract_settings_view",
"attributes": {
"initial_time_account": 0.0,
"salary": 2.0,
"calc_holiday_options": "Set target hours to zero",
"custom_holiday_hours": 0.0,
"hours_on_vacation_day": 0.0,
"start_of_accounting": "2022-07-01",
"saldo_type": "Actual-Plan"
}
},
"meta": {
"request_id": "4abcc944-2382-48cd-a3ee-be134a5c62cf",
"git_commit": "dfbcc92067e7ddb4a8b9dc147faa7680a5528cb5"
}
}
Update contract setting
Request
Endpoint
PATCH /api/v3/workspaces/1028/users/112/contract_settings
Content-Type: application/vnd.api+json
Authorization: Bearer YOUR_TOKEN_HERE
PATCH /api/v3/workspaces/:workspace_id/users/:user_id/contract_settings
Parameters
{
"data": {
"type": "user",
"attributes": {
"start_of_accounting": "02/02/2023",
"initial_time_account": 1000000.0,
"saldo_type": 2,
"salary": 1000,
"calc_holiday_options": "at_least_target",
"custom_holiday_hours": 8,
"hours_on_vacation_day": 5
}
}
}
Name | Description |
---|---|
workspace_id required | Workspace ID |
user_id required | User ID |
Response
Content-Type: application/json; charset=utf-8
200 OK
{
"data": {
"id": 1,
"type": "user",
"attributes": {
"start_of_accounting": "02/02/2023",
"initial_time_account": 1000000.0,
"saldo_type": 2,
"salary": 1000,
"calc_holiday_options": "at_least_target",
"custom_holiday_hours": 8,
"hours_on_vacation_day": 5
}
},
"meta": {
"request_id": "706408bb-647b-4906-9d8b-fbdbb60cb707",
"git_commit": "3603ea19b5a06db54cfd765cd49f708113fa57dc",
"link": 0
}
}