Client for the Toggl API built for async and await support
ISC License
Client for the Toggl API built for async and await support
npm i toggl-client
const togglClient = require('toggl-client');
const client = togglClient({ apiToken: YOUR_API_TOKEN });
Main class to interact with the toggl API.
Calling togglClient({ apiToken: YOUR_API_TOKEN });
returns an instance of this class.
workspaces
Workspaces projects
Projects timeEntries
TimeEntries clients
Clients groups
Groups tags
Tags projectUsers
ProjectUsers user
User Access workspaces. See https://github.com/toggl/toggl_api_docs/blob/master/chapters/workspaces.md
Lists all workspaces
Returns Array<Workspace> List of workspaces
Gets a workspace by id
Returns (Workspace | undefined) Workspace or undefined if the given workspace does not exist
Updates an existing workspace
Returns Workspace The updated workspace
Gets a list of users associated with the workspace
Returns any List of users associated with the workspace
Gets a list of clients associated with the workspace
Returns any List of clients associated with the workspace
Gets a list of groups associated with the workspace
Returns any List of groups associated with the workspace
Gets a list of projects associated with the workspace
Returns any List of projects associated with the workspace
Gets a list of tasks associated with the workspace
Returns any List of tasks associated with the workspace
Gets a list of tags associated with the workspace
Returns any List of tags associated with the workspace
Type: Object
id
number Id of the workspacename
number Name of the workspacepremium
boolean True if premium features are enabledadmin
boolean True if requesting user has admin access to the workspacedefault_hourly_rate
number Default hourly rate only shown for requesting admin usersdefault_currency
string Default currencyonly_admins_may_create_projects
boolean only_admins_see_billable_rates
boolean only_admins_see_team_dashboard
boolean rounding
number type of roundingrounding_minutes
number round up to nearest minuteat
date Indicates when the workspace was created or updatedReturns the input data or an empty array
data
any Input dataReturns any any
Parses the input and returns the data property or an undefined This was used heavily in the v8 API and may no longer be needed in v9.
res
any A response from the Toggl APIReturns any object||undefined
Access clients. See https://github.com/toggl/toggl_api_docs/blob/master/chapters/clients.md
Gets a list of clients
Returns any an array of clients
Creates a new client
client
any Returns any Created client
Gets a client by id
Returns any client or undefined if no client with specified id was found
Updates a client
Returns any updated client
Deletes a client by id
Lists projects associated with the given client
Access groups. See https://github.com/toggl/toggl_api_docs/blob/master/chapters/groups.md
Creates a group
group
any Returns any group created
Updates a group
Returns any result of update operation
Deletes a group
Access Tags. See https://developers.track.toggl.com/docs/api/tags
Validates that a tag contains the name property.
tag
Object The tag object to be validatedCreates a new tag
workspace_id
number Id of the workspacetag
object A tag object with the property name
and optionally workspace_id
Returns any Tag created
Updates an existing tag
workspace_id
number Id of the workspaceid
(number | string) Id of the tag to be updatedtag
object A tag object with the property name
and optionally workspace_id
Returns any Updated tag
Deletes an existing tag
Access project users. See https://github.com/toggl/toggl_api_docs/blob/master/chapters/project_users.md
Gets a project user by id
Updates an existing project user
Deletes an existing project user
Creates a new project user
project_user
any Returns any project user created
Access projects. See https://developers.track.toggl.com/docs/api/projects
Creates a new project
workspace_id
(number) Id of the workspace to be updatedproject
any Returns any Project created
Gets an existing project by id
Returns any Project if a project with the specified id exists, othererwise undefined
Gets all projects
Returns any Project if a project with the specified id exists, othererwise undefined
Updates an existing project
workspace_id
(number) Id of the workspace to be updatedproject_id
(number) Id of the project to be updatedproject
any Returns any The updated project
Deletes an existing project
workspace_id
project_id
id
(number) Id of the project to be deletedGets tasks associated with the given project
workspace_id
project_id
id
(number) Id of the projectReturns any Array of tasks associated with the project
Access time entries. See https://github.com/toggl/toggl_api_docs/blob/master/chapters/time_entries.md
Gets the time entry specified by id. Due to limitations of the v9 API, start_date must not be earlier than 3 months ago. If you want results further back, use the reports endpoints.
id
any Returns any TimeEntry
Delete an existing time entry
id
number Lists time entries. The query
must include start_date
and end_date
. Note that due to
limitations of the v9 API, start_date must not be earlier 3 months ago. If you want results
further back, use the reports endpoints.
query
any must include start_date
and end_date
and must be within the last 30 days.Returns any List of time entries
Creates a new time entry
time_entry
any must include workspace_id
and start
Returns any
Creates a new time entry
time_entry
any must include workspace_id
and start
Returns any
Stops the current running time entry
time_entry
Returns any
Gets the current running time entry
Returns any
Updates an existing time entry
id
number time_entry
any Returns any
Access reports. See https://github.com/toggl/toggl_api_docs/blob/master/reports.md
Weekly report https://developers.track.toggl.com/docs/reports/weekly_reports#post-search-time-entries
workspaceId
params
Weekly report containing all pages fetched with wait time between requests of 1010ms https://developers.track.toggl.com/docs/reports/weekly_reports#post-search-time-entries
workspaceId
params
Detailed report URL: GET https://api.track.toggl.com/reports/api/v3/workspace/{workspace_id}/search/time_entries https://developers.track.toggl.com/docs/reports/detailed_reports#post-load-totals-detailed-report params must include start_date
workspaceId
params
Detailed report containing all pages fetched with wait time between requests of 1010ms URL: GET https://api.track.toggl.com/reports/api/v3/workspace/{workspace_id}/search/time_entries https://developers.track.toggl.com/docs/reports/detailed_reports#post-load-totals-detailed-report params must include start_date
workspaceId
params
Summary report URL: GET https://api.track.toggl.com/reports/api/v2/summary
workspaceId
params
Summary report containing all pages fetched with wait time between requests of 1010ms URL: GET https://api.track.toggl.com/reports/api/v2/summary
workspaceId
params
Access users. See https://developers.track.toggl.com/docs/api/me
Gets the current user
Returns any The current user.See https://developers.track.toggl.com/docs/api/me#get-me
Updates the user. You can only update country_id
, current_password
, default_workspace_id
, email
, fullname
,name
, password
, timezone
See https://developers.track.toggl.com/docs/api/me#put-me
user
any Returns any The updated user.
Resets API token https://developers.track.toggl.com/docs/api/authentication#post-resettoken
Returns any New API token {String}