Skip to main content

v8 Migration Guide

This guide will help you migrate from API v8 to API v9.

caution

v9 introduced new entities like the organization, hence the interface was extended and these concepts are not migrated from v8. Read through our v9 announcement and Getting Started for more information.

v8 -> v9 mapping​

info

All not explicitly listed endpoints can be considered available as 1 to 1 replacement, changing v8 to v9 in the endpoint URL.

When v9 endpoints is marked -, it means the endpoint is no longer available. More details provided in additional notes.

tip

If you are looking for a pattern, most of the domain entities moved their path under workspace, for instance POST /clients will be available under /workspaces/{workspace_id}/clients/{client_id}.

Clients​

Verbv8v9Additional Notes
GET/clients/me/clients
POST/clients/workspaces/{workspace_id}/clients
PUT/clients/{client_id}/workspaces/{workspace_id}/clients/{client_id}
GET/clients/{client_id}/workspaces/{workspace_id}/clients/{client_id}
DELETE/clients/{client_id}/workspaces/{workspace_id}/clients/{client_id}

NOTE: new POST /workspaces/{workspace_id}/clients/{client_id}/archive and /workspaces/{workspace_id}/clients/{client_id}/restore functionalities are also available

Invitations​

Verbv8v9Additional Notes
POST/workspaces/{workspace_id}/invite/organizations/{organization_id}/invitations
PUT/invitations/{invitation_code}/resend/organizations/{organization_id}/invitations/{invitation_code}/resend
POST/invitations/{invitation_code}/accept/organizations/invitations/{invitation_code}/accept
POST/invitations/{invitation_code}/reject/organizations/invitations/{invitation_code}/reject

Misc​

Verbv8v9Additional Notes
POST/signups/signup
GET/timeline_settings-Can be retrieved via user preferences
POST/timeline_settings-Can be updated via user preferences
POST/sessions/me/sessions
DELETE/sessions/me/sessions
POST/reset_token/me/reset_token
POST/alerts/workspaces/{workspace_id}/alertsAlready available in v8
DELETE/alerts/{alert_id}/workspaces/{workspace_id}/alerts/{alert_id}Already available in v8
GET/dashboard/{workspace_id}/workspaces/{workspace_id}/dashboard/all_activityAlso available more specific /most_active and /top_activity
POST/user_groups-no longer available
DELETE/user_groups-no longer available

Projects​

Verbv8v9Additional Notes
GET/projects/me/projects/me/projects/paginated also available
POST/projects/workspaces/{workspace_id}/projects
GET/projects/{project_id}/workspaces/{workspace_id}/projects/{project_id}
PUT/projects/{project_id}/workspaces/{workspace_id}/projects/{project_id}
DELETE/projects/{project_id}/workspaces/{workspace_id}/projects/{project_id}
GET/projects/{project_id}/project_groups/workspaces/{workspace_id}/project_groupsAlready available in v8
POST/project_groups/workspaces/{workspace_id}/project_groups
DELETE/project_groups/{project_group_id}/workspaces/{workspace_id}/project_groups/{project_group_id}
GET/projects/{project_id}/project_users/workspaces/{workspace_id}/project_users
POST/project_users/workspaces/{workspace_id}/project_users
PUT/project_users/{project_user_id}/workspaces/{workspace_id}/project_users/{project_user_id}
DELETE/project_users/{project_user_id}/workspaces/{workspace_id}/project_users/{project_user_id}

Tags​

Verbv8v9Additional Notes
POST/tags/workspaces/{workspace_id}/tags
PUT/tags/{tag_id}/workspaces/{workspace_id}/tags/{tag_id}
DELETE/tags/{tag_id}/workspaces/{workspace_id}/tags/{tag_id}

Tasks​

Verbv8v9Additional Notes
GET/tasks/me/tasks
POST/tasks/workspaces/{workspace_id}/projects/{project_id}/tasks
DELETE/tasks/{task_id}/workspaces/{workspace_id}/projects/{project_id}/tasks/{task_id}
GET/tasks/{task_id}/workspaces/{workspace_id}/projects/{project_id}/tasks
PUT/tasks/{task_id}/workspaces/{workspace_id}/projects/{project_id}/tasks/{task_id}

Time Entries​

Verbv8v9Additional Notes
GET/time_entries/me/time_entries
GET/time_entries/start-No longer available
POST/time_entries/start/workspaces/{workspace_id}/time_entries
GET/time_entries/current/me/time_entries/current
GET/time_entries/{time_entry_id}/stop-no longer available
POST/time_entries/{time_entry_id}/stop/workspaces/{workspace_id}/time_entries/{time_entry_id}/stopv9 version becomes PATCH
PUT/time_entries/{time_entry_id}/workspaces/{workspace_id}/time_entries/{time_entry_id}
POST/time_entries/{time_entry_id}-Use PUT request
DELETE/time_entries/{time_entry_id}/workspaces/{workspace_id}/time_entries/{time_entry_id}
GET/time_entries/{time_entry_id}-No longer available, should be reintroduced

Workspace​

Verbv8v9Additional Notes
GET/workspaces/workspacesAlso available as /me/workspaces
POST/workspaces/{workspace_id}/reset_token/me/reset_token
DELETE/workspaces/{workspace_id}/leave/organizations/{organization_id}/users/leave
GET/workspaces/{workspace_id}/workspace_users/workspaces/{workspace_id}/users
PUT/workspace_users/{workspace_user_id}/workspaces/{workspace_id}/workspace_users/{workspace_user_id}
DELETE/workspace_users/{workspace_user_id}/workspaces/{workspace_id}/workspace_users/{workspace_user_id}
© 2023 Toggl. All rights reserved.