List notifications
This API method returns the daily, weekly and birthday notifications the key can see, in one response without pagination. Requires notifications:read. Admins see every notification in the company; other users see only the notifications they own (ownerId).
Each notification has the fields of its frequency; Notification lists one schema per frequency.
Authorization
bearerAuth notifications:readAPI key sent as Authorization: Bearer vt_live_<secret>. See the Authentication and Scopes sections at the top of this document for how keys are created, which scopes exist and how the key owner's role limits them.
In: header
Scope: notifications:read
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v2/notifications"{
"data": [
{
"id": "notification-2b7f0e4a-1d93-4c61-8a47-3f1c2b9e4d5e",
"name": "Daily team summary",
"frequency": "DAILY",
"enabled": true,
"ownerId": "user-63b17e97-d38b-4586-8498-bb4f5d2e2c14",
"timezone": "Europe/Belgrade",
"hour": 9,
"minute": 0,
"locale": "en",
"locationIds": [],
"departmentIds": [],
"labelIds": [],
"destinations": [
{
"platform": "slack",
"addresses": [
"C04ABCDEF12"
],
"channelName": "general"
}
],
"sendOnDays": [
1,
2,
3,
4,
5
],
"groupBy": "TEAM",
"sendEmpty": false
},
{
"id": "notification-9e4d5e6f-7a8b-4c9d-8e0f-1a2b3c4d5e6f",
"name": "Birthdays",
"frequency": "BIRTHDAY",
"enabled": false,
"ownerId": "user-63b17e97-d38b-4586-8498-bb4f5d2e2c14",
"timezone": "Europe/Belgrade",
"hour": 10,
"minute": 0,
"locale": "en",
"locationIds": [],
"departmentIds": [],
"labelIds": [],
"destinations": [
{
"platform": "email",
"addresses": [
"team@chaochao.com"
]
}
],
"sendOnNonWorkingDays": true,
"managersReminders": []
}
]
}{
"error": {
"code": "UNAUTHORIZED",
"name": "Unauthorized",
"description": "The API key is missing, malformed or not recognized.",
"resolution": "Send a valid API key in the Authorization header as Bearer followed by the full vt_live_ key.",
"requestId": "c6af9ac6-7b61-11e6-9a41-93e8deadbeef"
}
}{
"error": {
"code": "INSUFFICIENT_SCOPE",
"name": "InsufficientScope",
"description": "The API key does not have the scopes this request needs.",
"resolution": "Add the scopes listed in details.requiredScopes to the key in the Vacation Tracker dashboard.",
"requestId": "c6af9ac6-7b61-11e6-9a41-93e8deadbeef",
"details": {
"requiredScopes": [
"leaves:write"
]
}
}
}{
"error": {
"code": "RATE_LIMITED",
"name": "RateLimited",
"description": "Too many requests were sent in a short time.",
"resolution": "Wait a few seconds and retry, using the same Idempotency-Key for writes.",
"requestId": "c6af9ac6-7b61-11e6-9a41-93e8deadbeef"
}
}{
"error": {
"code": "INTERNAL_ERROR",
"name": "InternalError",
"description": "Something went wrong on our side.",
"resolution": "Retry later, and if it keeps happening, contact Vacation Tracker support and quote the requestId.",
"requestId": "c6af9ac6-7b61-11e6-9a41-93e8deadbeef"
}
}Need help?
developers@vacationtracker.ioDelete an automation
This API method deletes an automation. Requires automations:write. No request body. The acting user is the key owner, or the X-On-Behalf-Of user. It waits for the deletion and returns 204, or 202 Accepted with an operation to poll. The automation's add-on does not need to be active.
Create a notification
This API method creates a notification. Requires notifications:write. The acting user is the key owner, or the X-On-Behalf-Of user; it must be an approver or an admin, and becomes the notification's owner (ownerId). It waits for the notification to be created and returns it with 201, or 202 Accepted with an operation to poll.