60% Off for 3 Months

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, 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.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.