× Freshbooks App Logo
FreshBooks
Official App
Free - Google Play
Get it

FreshBooks Classic Migration

General Info

As customers start to move from FreshBooks Classic (FBC) to New FreshBooks (NFB) they are often curious if the apps and integrations they worked so hard on building will work with the New FreshBooks API. 

The answer to that question is, most likely. 

There are some categories and endpoints we have deprecated or removed. The following document should provide details on which FBC endpoints will work on NFB. 

If you have additional questions about the migration, reach out to newapi@freshbooks.com

Clients

Categories Works on Modern Platform?
client.create Yes *
client.update Yes
client.get Yes
client.delete Yes
client.list Yes

* The client profile will be created however there are certain fields which existed in our Classic platform which no longer exists in our modern platform and will not appear in the modern platform's UI. These fields are: username, password, work_phone, mobile, fax, notes, s_street1, s_street2, s_city, s_state, s_country, s_code

Expense Categories

Endpoints Works on Modern Platform?
category.create Yes
category.update Yes
category.get Yes
category.delete Yes
category.list Yes

Contractors 

Endpoints Works on Modern Platform?
contractor.create No
contractor.update No
contractor.get No

Currency 

Endpoints Works on Modern Platform?
currency.list No

Default Terms

Endpoints Works on Modern Platform?
default_terms.list No
default_terms.get No
default_terms.update No

 

Email Template 

Endpoints Works on Modern Platform?
email_template.list No
email_template.update No
email_template.get No


Estimates

Endpoints Works on Modern Platform?
estimate.create Yes
estimate.update Yes
estimate.get Yes
estimate.delete Yes
estimate.list Yes
estimate.sendByEmail Yes
estimate.getPDF Yes * (it will give you the FBC version of the PDF)
estimate.accept Yes
estimate.markAsSent Yes

Expenses 

Endpoints Works on Modern Platform?
expense.create Yes
expense.update Yes
expense.get Yes
expense.delete Yes
expense.list Yes

Gateway 

Endpoints Works on Modern Platform?
gateway.list No 

Invoice

Endpoints Works on Modern Platform?
invoice.create Yes
invoice.update Yes
invoice.get Yes
invoice.list Yes
invoice.getPDF Yes * (it will give you the FBC version of the PDF)
invoice.sendByEmail Yes
invoice.sendBySnailMail No
invoice.generate No
invoice.lines.add Yes
invoice.lines.delete Yes
invoice.lines.update Yes

Item

Endpoints Works on Modern Platform?
item.create Yes
item.update Yes
item.get Yes
item.delete Yes
item.list Yes

Languages

Endpoints Works on Modern Platform?
languages.get No * (It will return an incomplete list of available languages)

Payment

Endpoints Works on Modern Platform?
payment.create Yes
payment.update Yes
payment.get Yes
payment.delete Yes
payment.list Yes

Projects

Endpoints Works on Modern Platform?
project.create Yes * (The description field is no longer supported in the modern platform)
project.update Yes
project.get Yes
project.delete Yes
project.list Yes

* You must use the serviceId when creating or updating a project not the taskId. For information on how to get your serviceIDs please click here.

Receipt

Endpoints Works on Modern Platform?
receipt.create Yes
receipt.update Yes
receipt.get Yes
receipt.delete Yes

Recurring

Endpoints Works on Modern Platform?
recurring.create Yes 
recurring.update Yes
recurring.get Yes
recurring.delete Yes
recurring.list Yes
recurring.lines.add Yes
recurring.lines.delete Yes
recurring.lines.update Yes

Reports

Endpoints Works on Modern Platform?
report.getClientDetails No 
report.getEstimateDetails No
report.getInvoiceDetails No
report.getExpenseDetails No
report.getProfitDetails No

Staff

Endpoints Works on Modern Platform?
staff.current No 
staff.get No
staff.list No
staff.create No
staff.update No
staff.delete No

System

Endpoints Works on Modern Platform?
system.current No


Tasks

Endpoints Works on Modern Platform?
task.create Yes *
task.update Yes
task.delete Yes
task.get Yes
tax.delete Yes
tax.list Yes

* You can continue to use this endpoint to create tasks, however after it is created you will need to use the serviceID for that task in order to apply it to projects and time entries. For information on how to get your serviceIDs please click here.

Time Entries

Endpoints Works on Modern Platform?
time_entry.create Yes * 
time_entry.update Yes *
time_entry.get Yes
time_entry.delete Yes
time_entry.list Yes

* You must use serviceId when creating or updating a time entry not the taskId. For information on how to get your serviceIDs please click here.

* You will not be able to create and assign a time entry to a staff member using the Classic API.