Pricing & Sign-Up Features Tour Videos Testimonials FAQs Press
Less Accounting logo User Login Sign-up for Less Accounting

Hey Geeks, here's the API!

API Forum

The Less Accounting API has a google group. Please use this group to ask questions and receive notifications about the API. Please search for your question before asking to see if your question has already been answered. New members are moderated so your question might not show up for a few hours. http://groups.google.com/group/less-accounting-api

Authentication

The Less Accounting API requires authentication for every request. HTTP Basic Authentication is the only supported authentication scheme.

API Keys

All uses of the Less Accounting API are required to have a valid API Key, which must be supplied as a parameter to each method in the API.

Abuse of the API will result in the api key being revoked. API calls made with a revoked API Key will receive the follow xml as the response with a status code 403:

  <?xml version="1.0" encoding="UTF-8"?>
  <errors>
    <error>API Key is not valid</error>
  </errors>

You must have a valid user account to create an API key.

Create/view your API Keys

HTTP Verbs

  • The API makes use of the HTTP verbs GET, POST, PUT and DELETE.
  • Many of the methods are made to the same url and the HTTP verb is used to distinguish what type of operation to perform (Create, Read, Update, Delete).
  • Since web browsers only support GET and POST, the PUT and DELETE verbs must be supplied via a form variable called '_method' with the value either 'put' or 'delete.'

HTTP Status Codes

Here is a complete list of HTTP status codes. Here is an example of a few:
  • 200 OK: everything went ok.
  • 304 Not Modified: there was no new data to return.
  • 400 Bad Request: your request is invalid, and we'll return an error message that tells you why.
  • 401 Not Authorized: either you need to provide authentication credentials, or the credentials provided aren't valid.
  • 403 Forbidden: we understand your request, but are refusing to fulfill it.  An accompanying error message should explain why.
  • 404 Not Found: either you're requesting an invalid URI or the resource in question doesn't exist (ex: no such user). 
  • 500 Internal Server Error: we did something wrong.  Please post to the group about it and the we will investigate.
  • 502 Bad Gateway: returned if More Honey is down or being upgraded.
  • 503 Service Unavailable: the More Honey servers are up, but are overloaded with requests.  Try again later.

Errors

Errors are sent with the proper HTTP status codes and the xml in the following format:
  <?xml version="1.0" encoding="UTF-8"?>
  <errors>
    <error>Name has already been taken</error>
  </errors>

Method Parameters

Method parameters that pertain to a specific object should be supplied in the format: object_type[parameter]. E.G., bank_account[name] or expense[amount]. Please see the example for each method to see the usage.

Business Methods

get_businesses

HTTP Verb/URL: GET https://lessaccounting.com/businesses/get_businesses.xml
Business sub-domain required in url: false
Id parameter required in url: false
API Key (api_key) parameter required: true
No other parameters.

Example:

Request: https://{your_business}.lessaccounting.com/businesses/get_businesses.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<businesses type="array">
  <business>
    <address nil="true"></address>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <currency-id type="integer">1</currency-id>
    <description-string>Description</description-string>
    <id type="integer">1</id>
    <invoice-date-string>Date:</invoice-date-string>
    <invoice-due-string>Due:</invoice-due-string>
    <invoice-total-string>i total</invoice-total-string>
    <level type="integer">2</level>
    <line-total-string>Line Total</line-total-string>
    <name>bus1</name>
    <next-reference-number type="integer">1</next-reference-number>
    <payment-received-email-subject-string>Payment Received - Thank you</payment-received-email-subject-string>
    <payment-string>Payment:</payment-string>
    <paypal-email-address nil="true"></paypal-email-address>
    <proposal-total-string>p total</proposal-total-string>
    <quantity-string>Quantity</quantity-string>
    <receive-email-brief type="boolean" nil="true"></receive-email-brief>
    <reference-number-string>Reference #:</reference-number-string>
    <remaining-balance-string>Remaining Balance:</remaining-balance-string>
    <sales-tax-fields-default-on type="boolean">true</sales-tax-fields-default-on>
    <show-paypal type="boolean" nil="true"></show-paypal>
    <subdomain>bus1</subdomain>
    <title-string>Title</title-string>
    <total-paid-string>Total Paid:</total-paid-string>
    <unit-price-string>Unit Price</unit-price-string>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <vat nil="true"></vat>
    <vat-string>VAT Number:</vat-string>
  </business>
  <business>
    <address nil="true"></address>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <currency-id type="integer">1</currency-id>
    <description-string>Description</description-string>
    <id type="integer">17</id>
    <invoice-date-string>Date:</invoice-date-string>
    <invoice-due-string>Due:</invoice-due-string>
    <invoice-total-string>i total</invoice-total-string>
    <level type="integer">2</level>
    <line-total-string>Line Total</line-total-string>
    <name>bus17</name>
    <next-reference-number type="integer">1</next-reference-number>
    <payment-received-email-subject-string>Payment Received - Thank you</payment-received-email-subject-string>
    <payment-string>Payment:</payment-string>
    <paypal-email-address nil="true"></paypal-email-address>
    <proposal-total-string>p total</proposal-total-string>
    <quantity-string>Quantity</quantity-string>
    <receive-email-brief type="boolean" nil="true"></receive-email-brief>
    <reference-number-string>Reference #:</reference-number-string>
    <remaining-balance-string>Remaining Balance:</remaining-balance-string>
    <sales-tax-fields-default-on type="boolean">true</sales-tax-fields-default-on>
    <show-paypal type="boolean" nil="true"></show-paypal>
    <subdomain>bus17</subdomain>
    <title-string>Title</title-string>
    <total-paid-string>Total Paid:</total-paid-string>
    <unit-price-string>Unit Price</unit-price-string>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <vat nil="true"></vat>
    <vat-string>VAT Number:</vat-string>
  </business>
</businesses>

  

show

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/businesses/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string required Both The name of the business.
subdomain string required Both The subdomain at lessaccounting.com used to access this business.
email string required Both The used to send invoices.
created_at datetime N/A Output
updated_at datetime N/A Output
sales_tax_fields_default_on boolean optional Both Do line items show sales tax by default.
next_reference_number integer optional Both the next number to use to create an invoice or proposal.
address text optional Both
vat string optional Both The string displayed for VAT.
paypal_email_address string optional Both The paypal account email address to use when showing the paypal button in invoices.
currency_id integer optional Both The id for the currency type that this business uses. See the Currency object for details. This parameter will be moving to another object in the future.
receive_email_brief boolean optional Both
show_paypal boolean optional Both
level integer optional Both
proposal_total_string string optional Both
invoice_total_string string optional Both
vat_string string optional Both
invoice_date_string string optional Both
invoice_due_string string optional Both
reference_number_string string optional Both
payment_string string optional Both
total_paid_string string optional Both
remaining_balance_string string optional Both
payment_received_email_subject_string string optional Both
title_string string optional Both
description_string string optional Both
unit_price_string string optional Both
quantity_string string optional Both
line_total_string string optional Both

Example:

Request: https://{your_business}.lessaccounting.com/businesses/1.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<business>
  <address nil="true"></address>
  <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
  <currency-id type="integer">1</currency-id>
  <description-string>Description</description-string>
  <id type="integer">1</id>
  <invoice-date-string>Date:</invoice-date-string>
  <invoice-due-string>Due:</invoice-due-string>
  <invoice-total-string>i total</invoice-total-string>
  <level type="integer">2</level>
  <line-total-string>Line Total</line-total-string>
  <name>bus1</name>
  <next-reference-number type="integer">1</next-reference-number>
  <payment-received-email-subject-string>Payment Received - Thank you</payment-received-email-subject-string>
  <payment-string>Payment:</payment-string>
  <paypal-email-address nil="true"></paypal-email-address>
  <proposal-total-string>p total</proposal-total-string>
  <quantity-string>Quantity</quantity-string>
  <receive-email-brief type="boolean" nil="true"></receive-email-brief>
  <reference-number-string>Reference #:</reference-number-string>
  <remaining-balance-string>Remaining Balance:</remaining-balance-string>
  <sales-tax-fields-default-on type="boolean">true</sales-tax-fields-default-on>
  <show-paypal type="boolean" nil="true"></show-paypal>
  <subdomain>bus1</subdomain>
  <title-string>Title</title-string>
  <total-paid-string>Total Paid:</total-paid-string>
  <unit-price-string>Unit Price</unit-price-string>
  <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
  <vat nil="true"></vat>
  <vat-string>VAT Number:</vat-string>
</business>

  

create

HTTP Verb/URL: POST https://<business_name>.lessaccounting.com/businesses.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string required Both The name of the business.
subdomain string required Both The subdomain at lessaccounting.com used to access this business.
email string required Both The used to send invoices.
created_at datetime N/A Output
updated_at datetime N/A Output
sales_tax_fields_default_on boolean optional Both Do line items show sales tax by default.
next_reference_number integer optional Both the next number to use to create an invoice or proposal.
address text optional Both
vat string optional Both The string displayed for VAT.
paypal_email_address string optional Both The paypal account email address to use when showing the paypal button in invoices.
currency_id integer optional Both The id for the currency type that this business uses. See the Currency object for details. This parameter will be moving to another object in the future.
receive_email_brief boolean optional Both
show_paypal boolean optional Both
level integer optional Both
proposal_total_string string optional Both
invoice_total_string string optional Both
vat_string string optional Both
invoice_date_string string optional Both
invoice_due_string string optional Both
reference_number_string string optional Both
payment_string string optional Both
total_paid_string string optional Both
remaining_balance_string string optional Both
payment_received_email_subject_string string optional Both
title_string string optional Both
description_string string optional Both
unit_price_string string optional Both
quantity_string string optional Both
line_total_string string optional Both

Example:

Request: https://{your_business}.lessaccounting.com/businesses.xml?business[name]=my new business&business[subdomain]=my_new_business&business[email]=myemail@mydomain.com&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<business>
  <address nil="true"></address>
  <created-at type="datetime">2008-12-31T18:08:41Z</created-at>
  <currency-id type="integer" nil="true"></currency-id>
  <description-string>Description</description-string>
  <id type="integer">94</id>
  <invoice-date-string>Date:</invoice-date-string>
  <invoice-due-string>Due:</invoice-due-string>
  <invoice-total-string>Invoice Total:</invoice-total-string>
  <level type="integer">2</level>
  <line-total-string>Line Total</line-total-string>
  <name>my new business</name>
  <next-reference-number type="integer">1</next-reference-number>
  <payment-received-email-subject-string>Payment Received - Thank you</payment-received-email-subject-string>
  <payment-string>Payment:</payment-string>
  <paypal-email-address nil="true"></paypal-email-address>
  <proposal-total-string>Proposal Total:</proposal-total-string>
  <quantity-string>Quantity</quantity-string>
  <receive-email-brief type="boolean" nil="true"></receive-email-brief>
  <reference-number-string>Reference #:</reference-number-string>
  <remaining-balance-string>Remaining Balance:</remaining-balance-string>
  <sales-tax-fields-default-on type="boolean" nil="true"></sales-tax-fields-default-on>
  <show-paypal type="boolean" nil="true"></show-paypal>
  <subdomain>my_new_business</subdomain>
  <title-string>Title</title-string>
  <total-paid-string>Total Paid:</total-paid-string>
  <unit-price-string>Unit Price</unit-price-string>
  <updated-at type="datetime">2008-12-31T18:08:41Z</updated-at>
  <vat nil="true"></vat>
  <vat-string>VAT Number:</vat-string>
</business>

  

Example:

Request: https://{your_business}.lessaccounting.com/businesses.xml?business[name]=&business[subdomain]=&business[email]=&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Name can't be blank</error>
  <error>Name is too short (minimum is 1 characters)</error>
  <error>Name should contain at least one alpha character (a-z).</error>
  <error>Subdomain is too short (minimum is 1 characters)</error>
  <error>Email can't be blank</error>
</errors>

  

update

HTTP Verb/URL: PUT https://<business_name>.lessaccounting.com/businesses/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'put'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string required Both The name of the business.
subdomain string required Both The subdomain at lessaccounting.com used to access this business.
email string required Both The used to send invoices.
created_at datetime N/A Output
updated_at datetime N/A Output
sales_tax_fields_default_on boolean optional Both Do line items show sales tax by default.
next_reference_number integer optional Both the next number to use to create an invoice or proposal.
address text optional Both
vat string optional Both The string displayed for VAT.
paypal_email_address string optional Both The paypal account email address to use when showing the paypal button in invoices.
currency_id integer optional Both The id for the currency type that this business uses. See the Currency object for details. This parameter will be moving to another object in the future.
receive_email_brief boolean optional Both
show_paypal boolean optional Both
level integer optional Both
proposal_total_string string optional Both
invoice_total_string string optional Both
vat_string string optional Both
invoice_date_string string optional Both
invoice_due_string string optional Both
reference_number_string string optional Both
payment_string string optional Both
total_paid_string string optional Both
remaining_balance_string string optional Both
payment_received_email_subject_string string optional Both
title_string string optional Both
description_string string optional Both
unit_price_string string optional Both
quantity_string string optional Both
line_total_string string optional Both

Example:

Request: https://{your_business}.lessaccounting.com/businesses/1.xml?business[name]=&business[subdomain]=&business[email]=&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Name can't be blank</error>
  <error>Name is too short (minimum is 1 characters)</error>
  <error>Name should contain at least one alpha character (a-z).</error>
  <error>Subdomain is too short (minimum is 1 characters)</error>
  <error>Email can't be blank</error>
</errors>

  

Example:

Request: https://{your_business}.lessaccounting.com/businesses/1.xml?business[name]=my new business&business[subdomain]=my_new_business&business[email]=myemail@mydomain.com&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<business>
  <address nil="true"></address>
  <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
  <currency-id type="integer">1</currency-id>
  <description-string>Description</description-string>
  <id type="integer">1</id>
  <invoice-date-string>Date:</invoice-date-string>
  <invoice-due-string>Due:</invoice-due-string>
  <invoice-total-string>i total</invoice-total-string>
  <level type="integer">2</level>
  <line-total-string>Line Total</line-total-string>
  <name>my new business</name>
  <next-reference-number type="integer">1</next-reference-number>
  <payment-received-email-subject-string>Payment Received - Thank you</payment-received-email-subject-string>
  <payment-string>Payment:</payment-string>
  <paypal-email-address nil="true"></paypal-email-address>
  <proposal-total-string>p total</proposal-total-string>
  <quantity-string>Quantity</quantity-string>
  <receive-email-brief type="boolean" nil="true"></receive-email-brief>
  <reference-number-string>Reference #:</reference-number-string>
  <remaining-balance-string>Remaining Balance:</remaining-balance-string>
  <sales-tax-fields-default-on type="boolean">true</sales-tax-fields-default-on>
  <show-paypal type="boolean" nil="true"></show-paypal>
  <subdomain>my_new_business</subdomain>
  <title-string>Title</title-string>
  <total-paid-string>Total Paid:</total-paid-string>
  <unit-price-string>Unit Price</unit-price-string>
  <updated-at type="datetime">2008-12-31T18:08:42Z</updated-at>
  <vat nil="true"></vat>
  <vat-string>VAT Number:</vat-string>
</business>

  

destroy

Notes: Can only be called by the business owner.
HTTP Verb/URL: DELETE https://<business_name>.lessaccounting.com/businesses/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'delete'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string N/A Output The name of the business.
subdomain string N/A Output The subdomain at lessaccounting.com used to access this business.
email string N/A Output The used to send invoices.
created_at datetime N/A Output
updated_at datetime N/A Output
sales_tax_fields_default_on boolean N/A Output Do line items show sales tax by default.
next_reference_number integer N/A Output the next number to use to create an invoice or proposal.
address text N/A Output
vat string N/A Output The string displayed for VAT.
paypal_email_address string N/A Output The paypal account email address to use when showing the paypal button in invoices.
currency_id integer N/A Output The id for the currency type that this business uses. See the Currency object for details. This parameter will be moving to another object in the future.
receive_email_brief boolean N/A Output
show_paypal boolean N/A Output
level integer N/A Output
proposal_total_string string N/A Output
invoice_total_string string N/A Output
vat_string string N/A Output
invoice_date_string string N/A Output
invoice_due_string string N/A Output
reference_number_string string N/A Output
payment_string string N/A Output
total_paid_string string N/A Output
remaining_balance_string string N/A Output
payment_received_email_subject_string string N/A Output
title_string string N/A Output
description_string string N/A Output
unit_price_string string N/A Output
quantity_string string N/A Output
line_total_string string N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/businesses/1.xml?_method=delete&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
   
  

Bank Account Methods

index

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/bank_accounts.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string N/A Output The name of the business.
business_id integer N/A Output
created_at datetime N/A Output
starting_balance decimal N/A Output
balance decimal N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/bank_accounts.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<bank-accounts type="array">
  <bank-account>
    <business-id type="integer">1</business-id>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <id type="integer">1</id>
    <name>checking</name>
    <starting-balance type="decimal">0.0</starting-balance>
    <balance type="decimal">-991.06</balance>
  </bank-account>
  <bank-account>
    <business-id type="integer">1</business-id>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <id type="integer">101</id>
    <name>other</name>
    <starting-balance type="decimal">0.0</starting-balance>
    <balance type="decimal">1000.0</balance>
  </bank-account>
</bank-accounts>

  

show

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/bank_accounts/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string required Both The name of the business.
business_id integer N/A Output
created_at datetime N/A Output
starting_balance decimal optional Both
balance decimal N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/bank_accounts/1.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<bank-account>
  <business-id type="integer">1</business-id>
  <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
  <id type="integer">1</id>
  <name>checking</name>
  <starting-balance type="decimal">0.0</starting-balance>
  <balance type="decimal">-991.06</balance>
</bank-account>

  

create

HTTP Verb/URL: POST https://<business_name>.lessaccounting.com/bank_accounts.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string required Both The name of the business.
business_id integer N/A Output
created_at datetime N/A Output
starting_balance decimal optional Both
balance decimal N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/bank_accounts.xml?bank_account[name]=&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Name can't be blank</error>
  <error>Name is too short (minimum is 1 characters)</error>
</errors>

  

Example:

Request: https://{your_business}.lessaccounting.com/bank_accounts.xml?bank_account[name]=Checking&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<bank-account>
  <business-id type="integer">1</business-id>
  <created-at type="datetime">2008-12-31T18:08:40Z</created-at>
  <id type="integer">462</id>
  <name>Checking</name>
  <starting-balance type="decimal">0.0</starting-balance>
  <balance type="decimal">0.0</balance>
</bank-account>

  

update

HTTP Verb/URL: PUT https://<business_name>.lessaccounting.com/bank_accounts/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'put'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string required Both The name of the business.
business_id integer N/A Output
created_at datetime N/A Output
starting_balance decimal optional Both
balance decimal N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/bank_accounts/1.xml?bank_account[name]=&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Name can't be blank</error>
  <error>Name is too short (minimum is 1 characters)</error>
</errors>

  

Example:

Request: https://{your_business}.lessaccounting.com/bank_accounts/1.xml?bank_account[name]=Checking&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<bank-account>
  <business-id type="integer">1</business-id>
  <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
  <id type="integer">1</id>
  <name>Checking</name>
  <starting-balance type="decimal">0.0</starting-balance>
  <balance type="decimal">-991.06</balance>
</bank-account>

  

destroy

HTTP Verb/URL: DELETE https://<business_name>.lessaccounting.com/bank_accounts/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'delete'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the business.
name string N/A Output The name of the business.
business_id integer N/A Output
created_at datetime N/A Output
starting_balance decimal N/A Output
balance decimal N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/bank_accounts/1.xml?_method=delete&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<bank-account>
  <business-id type="integer">1</business-id>
  <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
  <id type="integer">1</id>
  <name>checking</name>
  <starting-balance type="decimal">0.0</starting-balance>
  <balance type="decimal">0.0</balance>
</bank-account>

  

Expense Category Methods

index

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/expense_categories.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense category.
name string N/A Output The name of the expense category.
business_id string N/A Output The id of the business that this expense category belongs to.
expenses_count string N/A Output The number of expenses that belongs to this expense category.

Example:

Request: https://{your_business}.lessaccounting.com/expense_categories.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expense-categories type="array">
  <expense-category>
    <business-id type="integer">1</business-id>
    <expenses-count type="integer">0</expenses-count>
    <id type="integer">1</id>
    <name>first expense</name>
  </expense-category>
</expense-categories>

  

show

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/expense_categories/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense category.
name string required Both The name of the expense category.
business_id string N/A Output The id of the business that this expense category belongs to.
expenses_count string N/A Output The number of expenses that belongs to this expense category.

Example:

Request: https://{your_business}.lessaccounting.com/expense_categories/1.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expense-category>
  <business-id type="integer">1</business-id>
  <expenses-count type="integer">0</expenses-count>
  <id type="integer">1</id>
  <name>first expense</name>
</expense-category>

  

create

HTTP Verb/URL: POST https://<business_name>.lessaccounting.com/expense_categories.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense category.
name string required Both The name of the expense category.
business_id string N/A Output The id of the business that this expense category belongs to.
expenses_count string N/A Output The number of expenses that belongs to this expense category.

Example:

Request: https://{your_business}.lessaccounting.com/expense_categories.xml?expense_category[name]=&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Name can't be blank</error>
  <error>Name is too short (minimum is 1 characters)</error>
</errors>

  

Example:

Request: https://{your_business}.lessaccounting.com/expense_categories.xml?expense_category[name]=Wages&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expense-category>
  <business-id type="integer">1</business-id>
  <expenses-count type="integer">0</expenses-count>
  <id type="integer">1824</id>
  <name>Wages</name>
</expense-category>

  

update

HTTP Verb/URL: PUT https://<business_name>.lessaccounting.com/expense_categories/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'put'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense category.
name string required Both The name of the expense category.
business_id string N/A Output The id of the business that this expense category belongs to.
expenses_count string N/A Output The number of expenses that belongs to this expense category.

Example:

Request: https://{your_business}.lessaccounting.com/expense_categories/1.xml?expense_category[name]=&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Name can't be blank</error>
  <error>Name is too short (minimum is 1 characters)</error>
</errors>

  

Example:

Request: https://{your_business}.lessaccounting.com/expense_categories/1.xml?expense_category[name]=Wages&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expense-category>
  <business-id type="integer">1</business-id>
  <expenses-count type="integer">0</expenses-count>
  <id type="integer">1</id>
  <name>Wages</name>
</expense-category>

  

destroy

HTTP Verb/URL: DELETE https://<business_name>.lessaccounting.com/expense_categories/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'delete'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense category.
name string N/A Output The name of the expense category.
business_id string N/A Output The id of the business that this expense category belongs to.
expenses_count string N/A Output The number of expenses that belongs to this expense category.

Example:

Request: https://{your_business}.lessaccounting.com/expense_categories/1.xml?_method=delete&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expense-category>
  <business-id type="integer">1</business-id>
  <expenses-count type="integer">0</expenses-count>
  <id type="integer">1</id>
  <name>first expense</name>
</expense-category>

  

Expense Methods

index

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/expenses.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense.
amount decimal N/A Output
bank_account_id integer N/A Output
title string N/A Output
check_number string N/A Output
created_at datetime N/A Output
creator_id integer N/A Output
updated_at datetime N/A Output
updater_id integer N/A Output
notes text N/A Output
business_id integer N/A Output
date date N/A Output Returns the paid date if this expense is paid or the due date if it is not paid.
expense_category_id integer N/A Output
contractor_id integer N/A Output
employee_id integer N/A Output
paid_date date N/A Output Either due date or paid date is required.
is_paid boolean N/A Output
transfer_fund_id integer N/A Output The Transfer Fund that this expense is associated with.
payee_id integer N/A Output
due_date date N/A Output Either due date or paid date is required.
client_id integer N/A Output
receipt_url integer N/A Output
q string optional Input The query to use in search.
page integer optional Input The page of the search results to return. Default is 1. The number of items per page is 25.

Example:

Request: https://{your_business}.lessaccounting.com/expenses.xml?q=&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expenses type="array">
  <expense>
    <amount type="decimal">1000.0</amount>
    <bank-account-id type="integer">1</bank-account-id>
    <business-id type="integer">1</business-id>
    <check-number nil="true"></check-number>
    <client-id type="integer" nil="true"></client-id>
    <contractor-id type="integer" nil="true"></contractor-id>
    <created-at type="datetime">2007-01-01T00:00:00Z</created-at>
    <creator-id type="integer">1</creator-id>
    <date type="date">2007-01-01</date>
    <due-date type="date">2006-01-01</due-date>
    <employee-id type="integer" nil="true"></employee-id>
    <expense-category-id type="integer" nil="true"></expense-category-id>
    <id type="integer">101</id>
    <is-paid type="boolean">true</is-paid>
    <notes nil="true"></notes>
    <paid-date type="date">2006-01-01</paid-date>
    <payee-id type="integer" nil="true"></payee-id>
    <title>no title</title>
    <transfer-fund-id type="integer">1</transfer-fund-id>
    <updated-at type="datetime">2007-01-01T00:00:00Z</updated-at>
    <updater-id type="integer">1</updater-id>
    <receipt-url></receipt-url>
  </expense>
  <expense>
    <amount type="decimal">1.06</amount>
    <bank-account-id type="integer">1</bank-account-id>
    <business-id type="integer">1</business-id>
    <check-number nil="true"></check-number>
    <client-id type="integer">1</client-id>
    <contractor-id type="integer" nil="true"></contractor-id>
    <created-at type="datetime">2006-01-01T00:00:00Z</created-at>
    <creator-id type="integer">1</creator-id>
    <date type="date">2006-01-01</date>
    <due-date type="date">2006-01-01</due-date>
    <employee-id type="integer" nil="true"></employee-id>
    <expense-category-id type="integer">1</expense-category-id>
    <id type="integer">1</id>
    <is-paid type="boolean">true</is-paid>
    <notes nil="true"></notes>
    <paid-date type="date">2006-01-01</paid-date>
    <payee-id type="integer" nil="true"></payee-id>
    <title>Check 111</title>
    <transfer-fund-id type="integer" nil="true"></transfer-fund-id>
    <updated-at type="datetime">2006-01-01T00:00:00Z</updated-at>
    <updater-id type="integer">1</updater-id>
    <receipt-url></receipt-url>
  </expense>
  <expense>
    <amount type="decimal">1.06</amount>
    <bank-account-id type="integer" nil="true"></bank-account-id>
    <business-id type="integer">1</business-id>
    <check-number nil="true"></check-number>
    <client-id type="integer" nil="true"></client-id>
    <contractor-id type="integer" nil="true"></contractor-id>
    <created-at type="datetime">2006-01-01T00:00:00Z</created-at>
    <creator-id type="integer">1</creator-id>
    <date type="date">2006-01-01</date>
    <due-date type="date">2006-01-01</due-date>
    <employee-id type="integer" nil="true"></employee-id>
    <expense-category-id type="integer">1</expense-category-id>
    <id type="integer">100</id>
    <is-paid type="boolean" nil="true"></is-paid>
    <notes nil="true"></notes>
    <paid-date type="date" nil="true"></paid-date>
    <payee-id type="integer" nil="true"></payee-id>
    <title>first expense</title>
    <transfer-fund-id type="integer" nil="true"></transfer-fund-id>
    <updated-at type="datetime">2006-01-01T00:00:00Z</updated-at>
    <updater-id type="integer">1</updater-id>
    <receipt-url></receipt-url>
  </expense>
  <expense>
    <amount type="decimal">1.06</amount>
    <bank-account-id type="integer" nil="true"></bank-account-id>
    <business-id type="integer">1</business-id>
    <check-number nil="true"></check-number>
    <client-id type="integer">1</client-id>
    <contractor-id type="integer" nil="true"></contractor-id>
    <created-at type="datetime">2006-01-01T00:00:00Z</created-at>
    <creator-id type="integer">1</creator-id>
    <date type="date">2006-01-01</date>
    <due-date type="date">2006-01-01</due-date>
    <employee-id type="integer" nil="true"></employee-id>
    <expense-category-id type="integer">1</expense-category-id>
    <id type="integer">2002</id>
    <is-paid type="boolean">true</is-paid>
    <notes nil="true"></notes>
    <paid-date type="date">2006-01-01</paid-date>
    <payee-id type="integer" nil="true"></payee-id>
    <title>Check 111</title>
    <transfer-fund-id type="integer" nil="true"></transfer-fund-id>
    <updated-at type="datetime">2006-01-01T00:00:00Z</updated-at>
    <updater-id type="integer">1</updater-id>
    <receipt-url></receipt-url>
  </expense>
  <expense>
    <amount type="decimal">1.06</amount>
    <bank-account-id type="integer">1</bank-account-id>
    <business-id type="integer">1</business-id>
    <check-number nil="true"></check-number>
    <client-id type="integer">1</client-id>
    <contractor-id type="integer" nil="true"></contractor-id>
    <created-at type="datetime">2006-01-01T00:00:00Z</created-at>
    <creator-id type="integer">1</creator-id>
    <date type="date">2006-01-01</date>
    <due-date type="date" nil="true"></due-date>
    <employee-id type="integer" nil="true"></employee-id>
    <expense-category-id type="integer">1</expense-category-id>
    <id type="integer">999</id>
    <is-paid type="boolean" nil="true"></is-paid>
    <notes nil="true"></notes>
    <paid-date type="date" nil="true"></paid-date>
    <payee-id type="integer" nil="true"></payee-id>
    <title>Check 111</title>
    <transfer-fund-id type="integer" nil="true"></transfer-fund-id>
    <updated-at type="datetime">2006-01-01T00:00:00Z</updated-at>
    <updater-id type="integer">1</updater-id>
    <receipt-url></receipt-url>
  </expense>
  <expense>
    <amount type="decimal">1.06</amount>
    <bank-account-id type="integer">1</bank-account-id>
    <business-id type="integer">1</business-id>
    <check-number nil="true"></check-number>
    <client-id type="integer">1</client-id>
    <contractor-id type="integer" nil="true"></contractor-id>
    <created-at type="datetime">2006-01-01T00:00:00Z</created-at>
    <creator-id type="integer">1</creator-id>
    <date type="date" nil="true"></date>
    <due-date type="date" nil="true"></due-date>
    <employee-id type="integer" nil="true"></employee-id>
    <expense-category-id type="integer">1</expense-category-id>
    <id type="integer">2001</id>
    <is-paid type="boolean" nil="true"></is-paid>
    <notes nil="true"></notes>
    <paid-date type="date" nil="true"></paid-date>
    <payee-id type="integer" nil="true"></payee-id>
    <title>Check 111</title>
    <transfer-fund-id type="integer" nil="true"></transfer-fund-id>
    <updated-at type="datetime">2006-01-01T00:00:00Z</updated-at>
    <updater-id type="integer">1</updater-id>
    <receipt-url></receipt-url>
  </expense>
</expenses>

  

show

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/expenses/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense.
amount decimal optional Both
bank_account_id integer optional Both
title string optional Both
check_number string optional Both
created_at datetime N/A Output
creator_id integer N/A Output
updated_at datetime N/A Output
updater_id integer N/A Output
notes text optional Both
business_id integer N/A Output
date date N/A Output Returns the paid date if this expense is paid or the due date if it is not paid.
expense_category_id integer optional Both
contractor_id integer optional Both
employee_id integer optional Both
paid_date date required Both Either due date or paid date is required.
is_paid boolean optional Both
transfer_fund_id integer optional Both The Transfer Fund that this expense is associated with.
payee_id integer optional Both
due_date date required Both Either due date or paid date is required.
client_id integer optional Both
receipt_url integer N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/expenses/1.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expense>
  <amount type="decimal">1.06</amount>
  <bank-account-id type="integer">1</bank-account-id>
  <business-id type="integer">1</business-id>
  <check-number nil="true"></check-number>
  <client-id type="integer">1</client-id>
  <contractor-id type="integer" nil="true"></contractor-id>
  <created-at type="datetime">2006-01-01T00:00:00Z</created-at>
  <creator-id type="integer">1</creator-id>
  <date type="date">2006-01-01</date>
  <due-date type="date">2006-01-01</due-date>
  <employee-id type="integer" nil="true"></employee-id>
  <expense-category-id type="integer">1</expense-category-id>
  <id type="integer">1</id>
  <is-paid type="boolean">true</is-paid>
  <notes nil="true"></notes>
  <paid-date type="date">2006-01-01</paid-date>
  <payee-id type="integer" nil="true"></payee-id>
  <title>Check 111</title>
  <transfer-fund-id type="integer" nil="true"></transfer-fund-id>
  <updated-at type="datetime">2006-01-01T00:00:00Z</updated-at>
  <updater-id type="integer">1</updater-id>
  <receipt-url></receipt-url>
</expense>

  

create

HTTP Verb/URL: POST https://<business_name>.lessaccounting.com/expenses.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense.
amount decimal optional Both
bank_account_id integer optional Both
title string optional Both
check_number string optional Both
created_at datetime N/A Output
creator_id integer N/A Output
updated_at datetime N/A Output
updater_id integer N/A Output
notes text optional Both
business_id integer N/A Output
date date N/A Output Returns the paid date if this expense is paid or the due date if it is not paid.
expense_category_id integer optional Both
contractor_id integer optional Both
employee_id integer optional Both
paid_date date required Both Either due date or paid date is required.
is_paid boolean optional Both
transfer_fund_id integer optional Both The Transfer Fund that this expense is associated with.
payee_id integer optional Both
due_date date required Both Either due date or paid date is required.
client_id integer optional Both
receipt_url integer N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/expenses.xml?expense[title]=&expense[amount]=&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Date either due date or paid date must be a valid date format.</error>
  <error>Amount is not a number</error>
</errors>

  

Example:

Request: https://{your_business}.lessaccounting.com/expenses.xml?expense[title]=Pizza&expense[amount]=15.87&expense[due_date]=2008-01-01&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expense>
  <amount type="decimal">15.87</amount>
  <bank-account-id type="integer" nil="true"></bank-account-id>
  <business-id type="integer">1</business-id>
  <check-number nil="true"></check-number>
  <client-id type="integer" nil="true"></client-id>
  <contractor-id type="integer" nil="true"></contractor-id>
  <created-at type="datetime">2008-12-31T18:08:45Z</created-at>
  <creator-id type="integer">1</creator-id>
  <date type="date">2008-01-01</date>
  <due-date type="date">2008-01-01</due-date>
  <employee-id type="integer" nil="true"></employee-id>
  <expense-category-id type="integer" nil="true"></expense-category-id>
  <id type="integer">2241</id>
  <is-paid type="boolean" nil="true"></is-paid>
  <notes nil="true"></notes>
  <paid-date type="date" nil="true"></paid-date>
  <payee-id type="integer" nil="true"></payee-id>
  <title>Pizza</title>
  <transfer-fund-id type="integer" nil="true"></transfer-fund-id>
  <updated-at type="datetime">2008-12-31T18:08:45Z</updated-at>
  <updater-id type="integer">1</updater-id>
  <receipt-url></receipt-url>
</expense>

  

update

HTTP Verb/URL: PUT https://<business_name>.lessaccounting.com/expenses/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'put'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense.
amount decimal optional Both
bank_account_id integer optional Both
title string optional Both
check_number string optional Both
created_at datetime N/A Output
creator_id integer N/A Output
updated_at datetime N/A Output
updater_id integer N/A Output
notes text optional Both
business_id integer N/A Output
date date N/A Output Returns the paid date if this expense is paid or the due date if it is not paid.
expense_category_id integer optional Both
contractor_id integer optional Both
employee_id integer optional Both
paid_date date required Both Either due date or paid date is required.
is_paid boolean optional Both
transfer_fund_id integer optional Both The Transfer Fund that this expense is associated with.
payee_id integer optional Both
due_date date required Both Either due date or paid date is required.
client_id integer optional Both
receipt_url integer N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/expenses/1.xml?expense[title]=Pizza&expense[amount]=15.87&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<expense>
  <amount type="decimal">15.87</amount>
  <bank-account-id type="integer">1</bank-account-id>
  <business-id type="integer">1</business-id>
  <check-number nil="true"></check-number>
  <client-id type="integer">1</client-id>
  <contractor-id type="integer" nil="true"></contractor-id>
  <created-at type="datetime">2006-01-01T00:00:00Z</created-at>
  <creator-id type="integer">1</creator-id>
  <date type="date">2006-01-01</date>
  <due-date type="date">2006-01-01</due-date>
  <employee-id type="integer" nil="true"></employee-id>
  <expense-category-id type="integer">1</expense-category-id>
  <id type="integer">1</id>
  <is-paid type="boolean">true</is-paid>
  <notes nil="true"></notes>
  <paid-date type="date">2006-01-01</paid-date>
  <payee-id type="integer" nil="true"></payee-id>
  <title>Pizza</title>
  <transfer-fund-id type="integer" nil="true"></transfer-fund-id>
  <updated-at type="datetime">2008-12-31T18:08:46Z</updated-at>
  <updater-id type="integer">1</updater-id>
  <receipt-url></receipt-url>
</expense>

  

Example:

Request: https://{your_business}.lessaccounting.com/expenses/1.xml?expense[title]=&expense[amount]=&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Amount is not a number</error>
</errors>

  

destroy

HTTP Verb/URL: DELETE https://<business_name>.lessaccounting.com/expenses/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'delete'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the expense.
amount decimal N/A Output
bank_account_id integer N/A Output
title string N/A Output
check_number string N/A Output
created_at datetime N/A Output
creator_id integer N/A Output
updated_at datetime N/A Output
updater_id integer N/A Output
notes text N/A Output
business_id integer N/A Output
date date N/A Output Returns the paid date if this expense is paid or the due date if it is not paid.
expense_category_id integer N/A Output
contractor_id integer N/A Output
employee_id integer N/A Output
paid_date date N/A Output Either due date or paid date is required.
is_paid boolean N/A Output
transfer_fund_id integer N/A Output The Transfer Fund that this expense is associated with.
payee_id integer N/A Output
due_date date N/A Output Either due date or paid date is required.
client_id integer N/A Output
receipt_url integer N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/expenses/1.xml?_method=delete&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
   
  

Currency Methods

index

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/currencies.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the currency.
name integer N/A Output
code integer N/A Output
html_symbol integer N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/currencies.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<currencies type="array">
  <currency>
    <code>USD</code>
    <html-symbol>$</html-symbol>
    <id type="integer">1</id>
    <name nil="true"></name>
  </currency>
  <currency>
    <code>CAD</code>
    <html-symbol>$</html-symbol>
    <id type="integer">2</id>
    <name nil="true"></name>
  </currency>
  <currency>
    <code>EUR</code>
    <html-symbol>4</html-symbol>
    <id type="integer">3</id>
    <name nil="true"></name>
  </currency>
  <currency>
    <code>GBP</code>
    <html-symbol>5</html-symbol>
    <id type="integer">4</id>
    <name nil="true"></name>
  </currency>
  <currency>
    <code>OTH</code>
    <html-symbol>$</html-symbol>
    <id type="integer">5</id>
    <name nil="true"></name>
  </currency>
</currencies>

  

show

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/currencies/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the currency.
name integer N/A Output
code integer N/A Output
html_symbol integer N/A Output

Example:

Request: https://{your_business}.lessaccounting.com/currencies/1.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<currency>
  <code>USD</code>
  <html-symbol>$</html-symbol>
  <id type="integer">1</id>
  <name nil="true"></name>
</currency>

  

Contact Methods

index

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/contacts.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the contact.
name string N/A Output The name of the contact.
company_name string N/A Output
created_at datetime N/A Output
updated_at datetime N/A Output
is_contractor boolean N/A Output
is_employee boolean N/A Output
active boolean N/A Output
note string N/A Output
address string N/A Output
email string N/A Output
phone_number_1 string N/A Output
phone_number_2 string N/A Output
basecamp_id integer N/A Output The unique identifier for Basecamp.
highrise_id integer N/A Output The unique identifier for Highrise.
google_id string N/A Output The unique identifier for Google.
q string optional Input The query to use in search.
page integer optional Input The page of the search results to return. Default is 1. The number of items per page is 25.

Example:

Request: https://{your_business}.lessaccounting.com/contacts.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<contacts type="array">
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name nil="true"></company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">85</id>
    <is-contractor type="boolean" nil="true"></is-contractor>
    <is-employee type="boolean">true</is-employee>
    <name>a</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">false</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name nil="true"></company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">86</id>
    <is-contractor type="boolean" nil="true"></is-contractor>
    <is-employee type="boolean">true</is-employee>
    <name>b</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name nil="true"></company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">87</id>
    <is-contractor type="boolean" nil="true"></is-contractor>
    <is-employee type="boolean">true</is-employee>
    <name>c</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name nil="true"></company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">88</id>
    <is-contractor type="boolean" nil="true"></is-contractor>
    <is-employee type="boolean">true</is-employee>
    <name>d</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name nil="true"></company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">89</id>
    <is-contractor type="boolean">true</is-contractor>
    <is-employee type="boolean" nil="true"></is-employee>
    <name>e</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name nil="true"></company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">90</id>
    <is-contractor type="boolean">true</is-contractor>
    <is-employee type="boolean" nil="true"></is-employee>
    <name>f</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name>company name</company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">1</id>
    <is-contractor type="boolean">false</is-contractor>
    <is-employee type="boolean">false</is-employee>
    <name>first contact</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email>sjdf@lsdjf.com</email>
    <phone-number-1>555-555-1212</phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name>The Ferret Freakatorium</company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">93</id>
    <is-contractor type="boolean">false</is-contractor>
    <is-employee type="boolean">false</is-employee>
    <name>Freaky Ferret</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name nil="true"></company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">91</id>
    <is-contractor type="boolean">true</is-contractor>
    <is-employee type="boolean" nil="true"></is-employee>
    <name>g</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
  <contact>
    <active type="boolean">true</active>
    <address nil="true"></address>
    <basecamp-id type="integer" nil="true"></basecamp-id>
    <company-name nil="true"></company-name>
    <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
    <google-id nil="true"></google-id>
    <highrise-id type="integer" nil="true"></highrise-id>
    <id type="integer">92</id>
    <is-contractor type="boolean">true</is-contractor>
    <is-employee type="boolean" nil="true"></is-employee>
    <name>h</name>
    <note nil="true"></note>
    <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
    <email></email>
    <phone-number-1 nil="true"></phone-number-1>
    <phone-number-2 nil="true"></phone-number-2>
  </contact>
</contacts>

  

show

HTTP Verb/URL: GET https://<business_name>.lessaccounting.com/contacts/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the contact.
name string required Both The name of the contact.
company_name string N/A Output
created_at datetime N/A Output
updated_at datetime N/A Output
is_contractor boolean optional Both
is_employee boolean optional Both
active boolean optional Both
note string optional Both
address string optional Both
email string optional Both
phone_number_1 string optional Both
phone_number_2 string optional Both
basecamp_id integer N/A Output The unique identifier for Basecamp.
highrise_id integer N/A Output The unique identifier for Highrise.
google_id string N/A Output The unique identifier for Google.

Example:

Request: https://{your_business}.lessaccounting.com/contacts/1.xml?api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<contact>
  <active type="boolean">true</active>
  <address nil="true"></address>
  <basecamp-id type="integer" nil="true"></basecamp-id>
  <company-name>company name</company-name>
  <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
  <google-id nil="true"></google-id>
  <highrise-id type="integer" nil="true"></highrise-id>
  <id type="integer">1</id>
  <is-contractor type="boolean">false</is-contractor>
  <is-employee type="boolean">false</is-employee>
  <name>first contact</name>
  <note nil="true"></note>
  <updated-at type="datetime">2008-12-31T18:08:38Z</updated-at>
  <email>sjdf@lsdjf.com</email>
  <phone-number-1>555-555-1212</phone-number-1>
  <phone-number-2 nil="true"></phone-number-2>
</contact>

  

create

HTTP Verb/URL: POST https://<business_name>.lessaccounting.com/contacts.xml
Business sub-domain required in url: true
Id parameter required in url: false
API Key (api_key) parameter required: true
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the contact.
name string required Both The name of the contact.
company_name string N/A Output
created_at datetime N/A Output
updated_at datetime N/A Output
is_contractor boolean optional Both
is_employee boolean optional Both
active boolean optional Both
note string optional Both
address string optional Both
email string optional Both
phone_number_1 string optional Both
phone_number_2 string optional Both
basecamp_id integer N/A Output The unique identifier for Basecamp.
highrise_id integer N/A Output The unique identifier for Highrise.
google_id string N/A Output The unique identifier for Google.

Example:

Request: https://{your_business}.lessaccounting.com/contacts.xml?contact[name]=&contact[email]=alsjdf@&contact[phone_number_1]=&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<errors>
  <error>Name or company name is required</error>
  <error>Emails is invalid</error>
  <error>Emails is invalid</error>
</errors>

  

Example:

Request: https://{your_business}.lessaccounting.com/contacts.xml?contact[name]=John Alibastar&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<contact>
  <active type="boolean">true</active>
  <address nil="true"></address>
  <basecamp-id type="integer" nil="true"></basecamp-id>
  <company-name nil="true"></company-name>
  <created-at type="datetime">2008-12-31T18:08:43Z</created-at>
  <google-id nil="true"></google-id>
  <highrise-id type="integer" nil="true"></highrise-id>
  <id type="integer">100</id>
  <is-contractor type="boolean" nil="true"></is-contractor>
  <is-employee type="boolean" nil="true"></is-employee>
  <name>John Alibastar</name>
  <note nil="true"></note>
  <updated-at type="datetime">2008-12-31T18:08:43Z</updated-at>
  <email></email>
  <phone-number-1 nil="true"></phone-number-1>
  <phone-number-2 nil="true"></phone-number-2>
</contact>

  

update

HTTP Verb/URL: PUT https://<business_name>.lessaccounting.com/contacts/1.xml
Business sub-domain required in url: true
Id parameter required in url: true
API Key (api_key) parameter required: true
_method Must be supplied as: 'put'
Parameter Data Type Required Input/Output param Description
id integer N/A Output The unique identifier of the contact.
name string required Both The name of the contact.
company_name string N/A Output
created_at datetime N/A Output
updated_at datetime N/A Output
is_contractor boolean optional Both
is_employee boolean optional Both
active boolean optional Both
note string optional Both
address string optional Both
email string optional Both
phone_number_1 string optional Both
phone_number_2 string optional Both
basecamp_id integer N/A Output The unique identifier for Basecamp.
highrise_id integer N/A Output The unique identifier for Highrise.
google_id string N/A Output The unique identifier for Google.

Example:

Request: https://{your_business}.lessaccounting.com/contacts/1.xml?contact[name]=John Alibastar&_method=put&api_key=89341988-6b36-4128-b3d5-deab427132a7
Response:
  <?xml version="1.0" encoding="UTF-8"?>
<contact>
  <active type="boolean">true</active>
  <address nil="true"></address>
  <basecamp-id type="integer" nil="true"></basecamp-id>
  <company-name>company name</company-name>
  <created-at type="datetime">2008-12-31T18:08:38Z</created-at>
  <google-id nil="true"></google-id>
  <highrise-id type="integer" nil="true"></highrise-id>
  <id type="integer">1</id>
  <is-contractor type="boolean">false</is-contractor>
  <is-employee type="boolean">false</is-employee>
  <name>John Alibastar</name>
  <note nil="true"></note>
  <updated-at type="datetime">2008-12-31T18:08:43Z</updated-at>
  <email>sjdf@lsdjf.com</email>
  <phone-number-1>555-555-1212</phone-number-1>
  <phone-number-2 nil="true"></phone-number-2>
</contact>

  

Example:

Request: https://{your_business}.lessaccounting.com/contacts/1.xml?contact[name]=&contact[company_name]=&_method=put&api_k