Skedbee's APIs are powerful yet simple to use. You can use Skedbee's innovative APIs to easily integrate Calendar, Task or Project management features in your existing products and add value for your customers.
Typical Calendar Event
Team meeting from 1pm to 2pm tomorrow
Skedbee's Innovative Calendar Event
Team meeting from 1pm to 2pm tomorrow
OR
Science assignment due next week
OR
Complete presentation anytime before next week
OR
Read a book every 2 days between 6pm to 10pm next week for 30 minutes
OR
Follow up with customer @MyWorkingHours for 30 minutes before end of next month
These API's are innovative because we are changing the way Calendars work. Typical Calendars are just for meetings or appointments. Using Skedbee's APIs, you can also schedule any tasks (with or without due date) in Calendar. Don't worry, Skedbee takes care of adaptively planning and finding the best time to schedule these tasks in Calendar. You can also use APIs to teach Skedbee the best time to schedule certain tasks.
Skedbee API Pricing
$3 / MONTH *
For One User Account
Free 2000 API calls per month
($0.02 for each call after the free quota)
Storage Up-to 10GB
Includes All APIs
* Promotional price. Lock in your price!
Use cases
There are a number of use cases where this innovative calendar solution can help your customers. Here are a few.
Learning Management System (LMS)
Teachers can just post assignments with due dates and these assignments get scheduled in the student's calendar. So students get reminded at the right time.
Example : Complete Wk1 Math Homework by this Friday and spend at least 5 hours.
Skedbee uses its learning and student preferences to schedule this assignment in the student's calendar. Assignments get automatically re-scheduled (until the due date) if it's not marked complete.
Task Management Applications
Tasks can be automatically scheduled in the calendar and you can plan the day for your customers.
Example : Pickup Groceries every weekend for 1 hour.
Project Management Applications
Project activities can be automatically scheduled in the calendar for every team member based on priority, so they know when to complete their work. This helps team members get a good idea of the amount of work they have to complete.
Example : Test UI for ProjectX before wednesday. It may take 10 hours.
Appointment Booking Applications
If your customer's tasks are scheduled in their calendar, your customer can have a pretty good view of their availability and book appointments without getting stressed out.
Skedbee API Overview
Here, we will provide an overview of all the APIs available in Skedbee. You may not need all these APIs. Use those that adds value for your customers and your business. For detailed documentation like parameters and response samples, please sign up for Skedbee API account. If you would like to see all APIs in action, please sign up for Skedbee personal account
User API
Use these APIs to create and manage user accounts. Each user will have their own account to manage calendar, notes, time tracking, attachments and tasks.
Once you sign up for a Skedbee API account, you will get your OAuth2.0 credentials. You will use that to create users. There is a monthly charge associated with each user creation. It will be automatically billed to your Skedbee API account. See Skedbee API Pricing.
POST skedbeeapi/v1/users
Creates a new user.
GET skedbeeapi/v1/users/all
Retrieves all users for the Skedbee API account.
GET skedbeeapi/v1/users/{user_id}
Retrieves one user using user_id.
UPDATE skedbeeapi/v1/users/{user_id}
Updates the user account. IDs cannot be updated.
DELETE skedbeeapi/v1/users/{user_id}
Deletes user account. Removes records associated with the user account.
You have to maintain the mapping between Skedbee user_id and your system's userid.
Calendar API
These APIs are used to create and manage calendar events. There are 3 types of Skedbee calendar events.
- Fixed event - Meetings, appointments.
- Custom Floating Event - Has a due date and gets scheduled in the calendar based on priority, preferences and learning.
- Floating event - Has no due date and gets scheduled in the calendar based on priority, preferences and learning.
Tip: Unlike typical Calendar events, Skedbee Calendar events can also have comments, tasks (see Tasks API), notes (see Notes API), time tracking records (see Time Tracking API) and attachments (see Attachments API). But if your application is already managing everything, you can just attach your external_record_id when creating an event. When retrieving the event, you can map the external_record_id back on your end. Skedbee can also manage the mapping on Skedbee's end (see below).
POST skedbeeapi/v1/calendar/{user_id}
Creates a new event for the user.
POST skedbeeapi/v1/calendar/nlpevent/{user_id}
Creates a new event using natural language.
POST skedbeeapi/v1/calendar/{user_id}/search
Search calendar events using keywords.
POST skedbeeapi/v1/calendar/{user_id}/{event_id}/progress
Updates progress for a calendar event. Used to mark an event as complete (100%, 20%, 70%).
GET skedbeeapi/v1/calendar/dayview/{user_id}/{date}
Retrieves all events scheduled by Skedbee for a date YYYY-MM-DD.
GET skedbeeapi/v1/calendar/weekview/{user_id}/{date}
Retrieves all events scheduled by Skedbee for a week using the date passed as parameter.
GET skedbeeapi/v1/calendar/monthview/{user_id}/{date}
Retrieves all events scheduled by Skedbee for a month using the date passed as parameter.
GET skedbeeapi/v1/calendar/{user_id}/{event_id}
Retrieves the event using Skedbee's event id.
GET skedbeeapi/v1/calendar/external/{user_id}/{external_record_id}
Retrieves the event using caller's external_record_id (if passed while creating the event).
UPDATE skedbeeapi/v1/calendar/{user_id}/{event_id}
Updates the event using Skedbee's event id.
UPDATE skedbeeapi/v1/calendar/external/{user_id}/{external_record_id}
Updates the event using caller's external_record_id (if passed while creating the event).
DELETE skedbeeapi/v1/calendar/{user_id}/{event_id}
Deletes the event using Skedbee's event id. Tasks and attachments associated with this event gets deleted.
DELETE skedbeeapi/v1/calendar/external/{user_id}/{external_record_id}
Deletes the event using the caller's external_record_id (if passed while creating the event).
Tasks API
These APIs are used to create and manage Tasks for calendar events. Tasks can have comments, notes (see Notes API), time tracking records (see Time Tracking API) and attachments (see Attachments API).
POST skedbeeapi/v1/task/{user_id}/{event_id}
Creates a new task for a calendar event.
POST skedbeeapi/v1/task/external/{user_id}/{external_record_id}
Creates a new task for a calendar event using the caller's external_record_id (if passed while creating the event).
POST skedbeeapi/v1/task/{user_id}/search
Search tasks using keywords.
GET skedbeeapi/v1/task/{user_id}/{event_id}/all
Retrieves all tasks for event_id
GET skedbeeapi/v1/task/external/{user_id}/{external_record_id}/all
Retrieves all tasks for caller's external_record_id
GET skedbeeapi/v1/task/{user_id}/{event_id}/{task_id}
Retrieves a task for event_id using task_id
GET skedbeeapi/v1/task/external/{user_id}/{external_record_id}/{task_id}
Retrieves a task for caller's external_record_id using task_id
UPDATE skedbeeapi/v1/task/{user_id}/{event_id}/{task_id}
Updates the task using task_id
UPDATE skedbeeapi/v1/task/external/{user_id}/{external_record_id}/{task_id}
Updates the task for caller's external_record_id using task_id
DELETE skedbeeapi/v1/task/{user_id}/{event_id}/{task_id}
Deletes the task. Attachments associated with this task gets deleted.
DELETE skedbeeapi/v1/task/external/{user_id}/{external_record_id}/{task_id}
Deletes the task.
Journal Notes API
These APIs are used to create and manage notes for calendar events and their tasks. Each note can have attachments (see Attachments API).
POST skedbeeapi/v1/notes/calendar/{user_id}/{event_id}
Creates a new note for a calendar event.
POST skedbeeapi/v1/notes/calendar/external/{user_id}/{external_record_id}
Creates a new note for a calendar event using caller's external_record_id (if passed while creating the event).
POST skedbeeapi/v1/notes/task/{user_id}/{task_id}
Creates a new note for the task.
POST skedbeeapi/v1/notes/{user_id}
Create a new note. This note is not associated with a calendar event or task.
POST skedbeeapi/v1/notes/{user_id}/search
Search notes using keywords.
GET skedbeeapi/v1/notes/{user_id}/{fromDate}/{toDate}/all
Retrieve all notes between fromDate and toDate.
GET skedbeeapi/v1/notes/{user_id}/{fromDate}/{toDate}/{event_id or task_id}
Retrieve notes between fromDate and toDate for a calendar event or task.
GET skedbeeapi/v1/notes/{user_id}/{notes_id}
Retrieve a note using notes_id.
UPDATE skedbeeapi/v1/notes/{user_id}/{notes_id}
Update a note using notes_id.
DELETE skedbeeapi/v1/notes/{user_id}/{notes_id}
Delete a note using notes_id. Attachments associated with this note get deleted.
Time Tracking API
These APIs are used to track work hours for calendar events, tasks and activities across projects. Each time record can have comments, duration (how long did it take for the work?) and attachments (see Attachments API). Skedbee can automatically learn from these APIs.
POST skedbeeapi/v1/tracktime/calendar/{user_id}/{event_id}
Creates a new time record for the calendar event.
POST skedbeeapi/v1/tracktime/calendar/external/{user_id}/{external_record_id}
Creates a new time record for the calendar event using caller's external_record_id (if passed while creating the event).
POST skedbeeapi/v1/tracktime/task/{user_id}/{task_id}
Creates a new time record for the task.
POST skedbeeapi/v1/tracktime/{user_id}
Create a new time record. This record is not associated with a calendar event or task.
POST skedbeeapi/v1/tracktime/{user_id}/search
Search time records using keywords.
GET skedbeeapi/v1/tracktime/calendar/{user_id}/{fromDate}/{toDate}/all
Retrieves all time records between fromDate and toDate.
GET skedbeeapi/v1/tracktime/calendar/{user_id}/{fromDate}/{toDate}/{event_id}
Retrieves time records for a calendar event between fromDate and toDate.
GET skedbeeapi/v1/tracktime/calendar/external/{user_id}/{external_record_id}/{fromDate}/{toDate}
Retrieves time records for a calendar event between fromDate and toDate using caller's external_record_id (if passed while creating the event).
GET skedbeeapi/v1/tracktime/task/{user_id}/{fromDate}/{toDate}/{task_id}
Retrieves time records for a task between fromDate and toDate.
GET skedbeeapi/v1/tracktime/{user_id}/{tracktime_record_id}
Retrieves time record using tracktime_record_id.
UPDATE skedbeeapi/v1/tracktime/{user_id}/{tracktime_record_id}
Updates time record using tracktime_record_id.
DELETE skedbeeapi/v1/tracktime/{user_id}/{tracktime_record_id}
Deletes time record using tracktime_record_id.
Toggle Timer API
These APIs are used to start and stop timers. You can also call these APIs from your IOT devices like sensors, appliances, gadgets to track time. Skedbee can automatically learn from these APIs.
POST skedbeeapi/v1/toggle/calendar/punchin/{user_id}/{event_id}
This request starts a timer for a calendar event. This action stops all other running timers
POST skedbeeapi/v1/toggle/calendar/punchout/{user_id}/{event_id}
This request stops a running timer for a calendar event. If there is no running timer, this action is ignored.
POST skedbeeapi/v1/toggle/punchin/{user_id}
Creates a new task and starts a timer for that task. This action stops all other running timers
POST skedbeeapi/v1/toggle/punchout/{user_id}/{task_id}
This request stops a running timer for a task created using the above API. If there is no running timer, this action is ignored.
GET skedbeeapi/v1/toggle/{user_id}/{fromDate}/{toDate}/all
Retrieves all toggle records for the user between fromDate and toDate
GET skedbeeapi/v1/toggle/{user_id}/{fromDate}/{toDate}/{event_id or task_id}
Retrieves toggle records for calendar event or tasks between fromDate and toDate
GET skedbeeapi/v1/toggle/{user_id}/{toggle_log_id}
Retrieves toggle record using toggle_log_id
UPDATE skedbeeapi/v1/toggle/{user_id}/{toggle_log_id}
Updates toggle record using toggle_log_id
DELETE skedbeeapi/v1/toggle/{user_id}/{toggle_log_id}
Deletes toggle record using toggle_log_id
Teach Skedbee API
Everyone is different and has their own calendar schedule or schedule preferences. You can personalize the user's calendar schedule preferences using these APIs. Skedbee uses this data to make corrective actions and create time blocks. Though Skedbee can automatically learn from time tracking (see Time Tracking API) and toggle records (see Toggle Timer API), it is important for Skedbee to make corrective decisions if its learning is wrong. Use these APIs for those scenarios.
You can also call these APIs from your IOT devices like sensors, appliances, gadgets.
POST skedbeeapi/v1/schedule/{user_id}/{event_id}/{preferredStartTime}/{preferredEndTime}
Creates preferences for a calendar event. Skedbee corrects its learning using the user's preferred time.
POST skedbeeapi/v1/schedule/{user_id}/{event_id}/reschedule
Reschedules a calendar event to a different time based on user preferences.
POST skedbeeapi/v1/timeblock/{user_id}
Creates a new time block where calendar events can be scheduled. Example MyOfficeHours, MyReadingHours. By default, these are learnable time blocks. Skedbee learns and updates a new schedule automatically. You have an option to disable this feature.
POST skedbeeapi/v1/timeblock/{user_id}/{time_block_id}/{preferredStartTime}/{preferredEndTime}
Adds preferred start time and end time to a time block.
DELETE skedbeeapi/v1/timeblock/{user_id}/{time_block_id}/{startTime}/{endTime}
Deletes preferred start time and end time from a time block.
GET skedbeeapi/v1/timeblock/{user_id}/all
Retrieves all time blocks created for the user.
GET skedbeeapi/v1/timeblock/{user_id}/{time_block_id}
Retrieves a time block by using time_block_id.
DELETE skedbeeapi/v1/timeblock/{user_id}/{time_block_id}
Deletes a time block by using time_block_id.
Attachments API
These APIs are used to upload and download files. Calendar events, Tasks, Time logs can have attachments. The content type that you pass in the header of your request should be multipart/form-data or application/octet-stream.
POST skedbeeapi/v1/calendar/{user_id}/{event_id}/attachments
Uploads a new file as an attachment for a calendar event.
POST skedbeeapi/v1/task/{user_id}/{task_id}/attachments
Uploads a new file as attachment for a task.
POST skedbeeapi/v1/notes/{user_id}/{notes_id}/attachments
Uploads a new file as attachment for journal note record.
POST skedbeeapi/v1/tracktime/{user_id}/{tracktime_record_id}/attachments
Uploads a new file as attachment for time record.
GET skedbeeapi/v1/calendar/{user_id}/{event_id}/attachments/all
Retrieves all attachments for a calendar event. The response has the URL where you can download the file.
GET skedbeeapi/v1/task/{user_id}/{task_id}/attachments/all
Retrieves all attachments for a task. The response has the URL where you can download the file.
GET skedbeeapi/v1/notes/{user_id}/{task_id}/attachments/all
Retrieves all attachments for notes. The response has the URL where you can download the file.
GET skedbeeapi/v1/tracktime/{user_id}/{tracktime_record_id}/attachments/all
Retrieves all attachments for time record. The response has the URL where you can download the file.
DELETE skedbeeapi/v1/attachments/{user_id}/{attachment_id}
Deletes the attached file and removes all relations.
Early Warning API
One of the powerful features in Skedbee is forecasting if user has time to complete a task. If Skedbee finds that the chances of completing a task before it's due is less, Skedbee raises an early warning alert depending on how bad the situation is in the predicted future. You need this API to retrieve all tasks that either cannot be scheduled or there is very less time to schedule.
GET skedbeeapi/v1/forecast/{user_id}/all
Retrieves all tasks that have chances of missing the due date.
GET skedbeeapi/v1/forecast/{user_id}/critical
Retrieves all tasks that have a very high chance of missing the due date.
GET skedbeeapi/v1/forecast/{user_id}/warning
Retrieves all tasks that have a moderate chance of missing the due date.
Risk API
This API retrieves all calendar events that are not marked as complete and its already past the due date.
GET skedbeeapi/v1/risk/{user_id}
Returns all calendar events that are past due date and not marked complete in Skedbee.