REST API: Available commands documentation

Customer

Customer - Add New Customer

post
api/customers

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
company String

Mandatory Customer company.

vat opcional String

Optional Vat.

phonenumber opcional String

Optional Customer Phone.

website opcional String

Optional Customer Website.

groups_in opcional Number[]

Optional Customer groups.

default_language opcional String

Optional Customer Default Language.

default_currency opcional String

Optional default currency.

address opcional String

Optional Customer address.

city opcional String

Optional Customer City.

state opcional String

Optional Customer state.

zip opcional String

Optional Zip Code.

partnership_type opcional String

Optional Customer partnership type.

country opcional String

Optional country.

billing_street opcional String

Optional Billing Address: Street.

billing_city opcional String

Optional Billing Address: City.

billing_state opcional Number

Optional Billing Address: State.

billing_zip opcional String

Optional Billing Address: Zip.

billing_country opcional String

Optional Billing Address: Country.

shipping_street opcional String

Optional Shipping Address: Street.

shipping_city opcional String

Optional Shipping Address: City.

shipping_state opcional String

Optional Shipping Address: State.

shipping_zip opcional String

Optional Shipping Address: Zip.

shipping_country opcional String

Optional Shipping Address: Country.

array (size=22)
  'company' => string 'Interactive' (length=38)
  'vat' => string '123456789' (length=9)
  'phonenumber' => string '123456789' (length=9)
  'website' => string 'AAA.com' (length=7)
  'groups_in' => 
    array (size=2)
      0 => string '1' (length=1)
      1 => string '4' (length=1)
  'default_currency' => string '3' (length=1)
  'default_language' => string 'english' (length=7)
  'address' => string '1a The Alexander Suite Silk Point' (length=27)
  'city' => string 'London' (length=14)
  'state' => string 'London' (length=14)
  'zip' => string '700000' (length=6)
  'country' => string '243' (length=3)
  'billing_street' => string '1a The Alexander Suite Silk Point' (length=27)
  'billing_city' => string 'London' (length=14)
  'billing_state' => string 'London' (length=14)
  'billing_zip' => string '700000' (length=6)
  'billing_country' => string '243' (length=3)
  'shipping_street' => string '1a The Alexander Suite Silk Point' (length=27)
  'shipping_city' => string 'London' (length=14)
  'shipping_state' => string 'London' (length=14)
  'shipping_zip' => string '700000' (length=6)
  'shipping_country' => string '243' (length=3)

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Customer add successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Customer add successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Customer add fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Customer add fail."
}

Customer - Delete a Customer

delete
api/delete/customers/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Customer unique ID.

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Customer Delete Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Customer Delete Successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Customer Delete Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Customer Delete Fail."
}

Customer - Request customer information

get
api/customers/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

customer unique ID.

Success 200

Campo Tipo Descripción
customer Object

information.

HTTP/1.1 200 OK
{
     "id": "28",
     "name": "Test1",
     "description": null,
     "status": "1",
     "clientid": "11",
     "billing_type": "3",
     "start_date": "2019-04-19",
     "deadline": "2019-08-30",
     "customer_created": "2019-07-16",
     "date_finished": null,
     "progress": "0",
     "progress_from_tasks": "1",
     "customer_cost": "0.00",
     "customer_rate_per_hour": "0.00",
     "estimated_hours": "0.00",
     "addedfrom": "5",
     "rel_type": "customer",
     "potential_revenue": "0.00",
     "potential_margin": "0.00",
     "external": "E",
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Customer - Search Customer Information

get
api/customers/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords.

Success 200

Campo Tipo Descripción
customer Object

information.

HTTP/1.1 200 OK
{
     "id": "28",
     "name": "Test1",
     "description": null,
     "status": "1",
     "clientid": "11",
     "billing_type": "3",
     "start_date": "2019-04-19",
     "deadline": "2019-08-30",
     "customer_created": "2019-07-16",
     "date_finished": null,
     "progress": "0",
     "progress_from_tasks": "1",
     "customer_cost": "0.00",
     "customer_rate_per_hour": "0.00",
     "estimated_hours": "0.00",
     "addedfrom": "5",
     "rel_type": "customer",
     "potential_revenue": "0.00",
     "potential_margin": "0.00",
     "external": "E",
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Customer - Update a Customer

put
api/customers/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
company String

Mandatory Customer company.

vat opcional String

Optional Vat.

phonenumber opcional String

Optional Customer Phone.

website opcional String

Optional Customer Website.

groups_in opcional Number[]

Optional Customer groups.

default_language opcional String

Optional Customer Default Language.

default_currency opcional String

Optional default currency.

address opcional String

Optional Customer address.

city opcional String

Optional Customer City.

state opcional String

Optional Customer state.

zip opcional String

Optional Zip Code.

country opcional String

Optional country.

billing_street opcional String

Optional Billing Address: Street.

billing_city opcional String

Optional Billing Address: City.

billing_state opcional Number

Optional Billing Address: State.

billing_zip opcional String

Optional Billing Address: Zip.

billing_country opcional String

Optional Billing Address: Country.

shipping_street opcional String

Optional Shipping Address: Street.

shipping_city opcional String

Optional Shipping Address: City.

shipping_state opcional String

Optional Shipping Address: State.

shipping_zip opcional String

Optional Shipping Address: Zip.

shipping_country opcional String

Optional Shipping Address: Country.

{
    "company": "Công ty A",
    "vat": "",
    "phonenumber": "0123456789",
    "website": "",
    "default_language": "",
    "default_currency": "0",
    "country": "243",
    "city": "TP London",
    "zip": "700000",
    "state": "Quận 12",
    "address": "hẻm 71, số 34/3 Đường TA 16, Phường Thới An, Quận 12",
    "billing_street": "hẻm 71, số 34/3 Đường TA 16, Phường Thới An, Quận 12",
    "billing_city": "TP London",
    "billing_state": "Quận 12",
    "billing_zip": "700000",
    "billing_country": "243",
    "shipping_street": "",
    "shipping_city": "",
    "shipping_state": "",
    "shipping_zip": "",
    "shipping_country": "0"
}

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Customer Update Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Customer Update Successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Customer Update Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Customer Update Fail."
}

Contact

Contact - Add New Contact

post
api/contacts/

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
customer_id Number

Mandatory Customer id.

firstname String

Mandatory First Name

lastname String

Mandatory Last Name

email String

Mandatory E-mail

title opcional String

Optional Position

phonenumber opcional String

Optional Phone Number

direction opcional String

Optional Direction (rtl or ltr)

Valor por defecto: rtl

password opcional String

Optional password (only required if you pass send_set_password_email parameter)

is_primary opcional String

Optional Primary Contact (set on or don't pass it)

Valor por defecto: on

donotsendwelcomeemail opcional String

Optional Do Not Send Welcome Email (set on or don't pass it)

send_set_password_email opcional String

Optional Send Set Password Email (set on or don't pass it)

permissions opcional Array

Optional Permissions for this contact(["1", "2", "3", "4", "5", "6" ])
[
"1", // Invoices permission
"2", // Estimates permission
"3", // Contracts permission
"4", // Proposals permission
"5", // Support permission
"6" // Projects permission
]

invoice_emails opcional String

Optional E-Mail Notification for Invoices (set value same as name or don't pass it)

Valor por defecto: invoice_emails

estimate_emails opcional String

Optional E-Mail Notification for Estimate (set value same as name or don't pass it)

Valor por defecto: estimate_emails

credit_note_emails opcional String

Optional E-Mail Notification for Credit Note (set value same as name or don't pass it)

Valor por defecto: credit_note_emails

project_emails opcional String

Optional E-Mail Notification for Project (set value same as name or don't pass it)

Valor por defecto: project_emails

ticket_emails opcional String

Optional E-Mail Notification for Tickets (set value same as name or don't pass it)

Valor por defecto: ticket_emails

task_emails opcional String

Optional E-Mail Notification for Task (set value same as name or don't pass it)

Valor por defecto: task_emails

contract_emails opcional String

Optional E-Mail Notification for Contract (set value same as name or don't pass it)

Valor por defecto: contract_emails

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Contact added successfully.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Contact added successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status

message String

Contact add fail

email String

This Email is already exists

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Contact add fail"
}
    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"email":"This Email is already exists"
		},
		"message": "This Email is already exists"
    }

Contact - Delete Contact

delete
api/delete/contacts/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
customer_id Number

unique Customer id

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Contact Deleted Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Contact Deleted Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status

message String

Contact Delete Fail

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Contact Delete Fail"
}

Contact - List all Contacts of a Customer

get
api/contacts/:customer_id/:contact_id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
customer_id Number

Mandatory Customer unique ID

contact_id Number

Optional Contact unique ID
Note : if you don't pass Contact id then it will list all contacts of the customer

Success 200

Campo Tipo Descripción
Contact Object

Contact information

    HTTP/1.1 200 OK
	{
		"id": "6",
		"userid": "1",
		"company": "xyz",
		"vat": "",
		"phonenumber": "1234567890",
		"country": "0",
		"city": "",
		"zip": "360005",
		"state": "",
		"address": "",
		"website": "",
		"datecreated": "2020-08-19 20:07:49",
		"active": "1",
		"leadid": null,
		"billing_street": "",
		"billing_city": "",
		"billing_state": "",
		"billing_zip": "",
		"billing_country": "0",
		"shipping_street": "",
		"shipping_city": "",
		"shipping_state": "",
		"shipping_zip": "",
		"shipping_country": "0",
		"longitude": null,
		"latitude": null,
		"default_language": "english",
		"default_currency": "0",
		"show_primary_contact": "0",
		"stripe_id": null,
		"registration_confirmed": "1",
		"addedfrom": "1"
	}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status

message String

No data were found

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Contact - Search Contact Information

get
api/contacts/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords

Success 200

Campo Tipo Descripción
Contact Object

Contact information

 HTTP/1.1 200 OK
 {
    "id": "8",
    "userid": "1",
    "is_primary": "0",
    "firstname": "chirag",
    "lastname": "jagani",
    "email": "useremail@gmail.com",
    "phonenumber": "",
    "title": null,
    "datecreated": "2020-05-19 20:07:49",
    "password": "$2a$08$6DLJFalqvJGVymCwW2ppNe9HOG5YUP04vzthXZjOFFUQknxfG6QHe",
    "new_pass_key": null,
    "new_pass_key_requested": null,
    "email_verified_at": "2020-08-28 21:36:06",
    "email_verification_key": null,
    "email_verification_sent_at": null,
    "last_ip": null,
    "last_login": null,
    "last_password_change": null,
    "active": "1",
    "profile_image": null,
    "direction": null,
    "invoice_emails": "0",
    "estimate_emails": "0",
    "credit_note_emails": "0",
    "contract_emails": "0",
    "task_emails": "0",
    "project_emails": "0",
    "ticket_emails": "0",
    "company": "trueline",
    "vat": "",
    "country": "0",
    "city": "",
    "zip": "",
    "state": "",
    "address": "",
    "website": "",
    "leadid": null,
    "billing_street": "",
    "billing_city": "",
    "billing_state": "",
    "billing_zip": "",
    "billing_country": "0",
    "shipping_street": "",
    "shipping_city": "",
    "shipping_state": "",
    "shipping_zip": "",
    "shipping_country": "0",
    "longitude": null,
    "latitude": null,
    "default_language": "english",
    "default_currency": "0",
    "show_primary_contact": "0",
    "stripe_id": null,
    "registration_confirmed": "1",
    "addedfrom": "1"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status

message String

No data were found

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Contact - Update Contact Information

put
api/contacts/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
id Number

Mandatory Customer Contact id.

firstname String

Mandatory First Name

lastname String

Mandatory Last Name

email String

Mandatory E-mail

title opcional String

Optional Position

phonenumber opcional String

Optional Phone Number

direction opcional String

Optional Direction (rtl or ltr)

Valor por defecto: rtl

password opcional String

Optional password (only required if you pass send_set_password_email parameter)

is_primary opcional String

Optional Primary Contact (set on or don't pass it)

Valor por defecto: on

donotsendwelcomeemail opcional String

Optional Do Not Send Welcome Email (set on or don't pass it)

send_set_password_email opcional String

Optional Send Set Password Email (set on or don't pass it)

permissions opcional Array

Optional Permissions for this contact(["1", "2", "3", "4", "5", "6" ])
[
"1", // Invoices permission
"2", // Estimates permission
"3", // Contracts permission
"4", // Proposals permission
"5", // Support permission
"6" // Projects permission
]

invoice_emails opcional String

Optional E-Mail Notification for Invoices (set value same as name or don't pass it)

Valor por defecto: invoice_emails

estimate_emails opcional String

Optional E-Mail Notification for Estimate (set value same as name or don't pass it)

Valor por defecto: estimate_emails

credit_note_emails opcional String

Optional E-Mail Notification for Credit Note (set value same as name or don't pass it)

Valor por defecto: credit_note_emails

project_emails opcional String

Optional E-Mail Notification for Project (set value same as name or don't pass it)

Valor por defecto: project_emails

ticket_emails opcional String

Optional E-Mail Notification for Tickets (set value same as name or don't pass it)

Valor por defecto: ticket_emails

task_emails opcional String

Optional E-Mail Notification for Task (set value same as name or don't pass it)

Valor por defecto: task_emails

contract_emails opcional String

Optional E-Mail Notification for Contract (set value same as name or don't pass it)

Valor por defecto: contract_emails

{
    "firstname": "new first name",
    "lastname": "new last name",
    "email": "dummy@gmail.com",
    "title": "",
    "phonenumber": "9909999099",
    "direction": "rtl",
    "password": "123456",
    "is_primary": "on",
    "send_set_password_email": "on",
    "permissions": [
        "1",
        "2",
        "3",
        "4",
        "5",
        "6"
    ],
    "invoice_emails": "invoice_emails",
    "estimate_emails": "estimate_emails",
    "credit_note_emails": "credit_note_emails",
    "project_emails": "project_emails",
    "ticket_emails": "ticket_emails",
    "task_emails": "task_emails",
    "contract_emails": "contract_emails"
}

Success 200

Campo Tipo Descripción
status Boolean

Request status

message String

Contact updated successful

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Contact Updated Successfully"
}

Error 4xx

Nombre Tipo Descripción
email String

This Email is already exists

status Boolean

Request status

message String

Contact add fail

    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"email":"This Email is already exists"
		},
		"message": "This Email is already exists"
    }
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Contact Update fail"
}

Invoice

Invoice - Add New invoice

post
api/invoices/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
clientid Number

Mandatory. Customer id

number Number

Mandatory. Invoice Number

date Date

Mandatory. Invoice Date

currency Number

Mandatory. currency field

newitems Array

Mandatory. New Items to be added

subtotal Decimal

Mandatory. calculation based on item Qty, Rate and Tax

total Decimal

Mandatory. calculation based on subtotal, Discount and Adjustment

billing_street String

Mandatory. Street Address

allowed_payment_modes Array

Mandatory. Payment modes

billing_city opcional String

Optional. City Name for billing

billing_state opcional String

Optional. Name of state for billing

billing_zip opcional Number

Optional. Zip code

billing_country opcional Number

Optional. Country code

include_shipping opcional boolean

Optional. set yes if you want add Shipping Address

Valor por defecto: no

show_shipping_on_invoice opcional boolean

Optional. Shows shipping details in invoice.

shipping_street opcional String

Optional. Address of shipping

shipping_city opcional String

Optional. City name for shipping

shipping_state opcional String

Optional. Name of state for shipping

shipping_zip opcional Number

Optional. Zip code for shipping

shipping_country opcional Number

Optional. Country code

duedate opcional Date

Optional. Due date for Invoice

cancel_overdue_reminders opcional boolean

Optional. Prevent sending overdue remainders for invoice

tags opcional String

Optional. TAGS comma separated

sale_agent opcional Number

Optional. Sale Agent name

recurring opcional String

Optional. recurring 1 to 12 or custom

discount_type opcional String

Optional. before_tax / after_tax discount type

repeat_every_custom opcional Number

Optional. if recurring is custom set number gap

repeat_type_custom opcional String

Optional. if recurring is custom set gap option day/week/month/year

cycles opcional Number

Optional. number of cycles 0 for infinite

adminnote opcional String

Optional. notes by admin

items opcional Array

Optional. Existing items with Id

removed_items opcional Array

Optional. Items to be removed

clientnote opcional String

Optional. client notes

terms opcional String

Optional. Terms

  [
		"clientid"=>1,
		"number"=>"00001",
		"date"=>"2020-09-07",
		"currency"=>1,
		"newitems[0][description]"=>"item 1 description",
		"newitems[0][long_description]"=>"item 1 long description",
		"newitems[0][qty]"=>1,
		"newitems[0][rate]"=>100,
		"newitems[0][order]"=>1,
		"newitems[0][taxname][]"=>CGST|9.00,
		"newitems[0][taxname][]"=>SGST|9.00,
		"newitems[0][unit]"=>"",
		"newitems[1][description]"=>"item 2 description",
		"newitems[1][long_description]"=>"item 2 long description",
		"newitems[1][qty]"=>1,
		"newitems[1][rate]"=>100,
		"newitems[1][order]"=>1,
		"newitems[1][taxname][]"=>CGST|9.00,
		"newitems[1][taxname][]"=>SGST|9.00,
		"newitems[1][unit]"=>"",
		"subtotal"=>236.00,
		"total"=>236.00,
		"billing_street"=>"billing address",
		"allowed_payment_modes[0]"=>1,
		"allowed_payment_modes[1]"=>2,
		....
	]

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Invoice Added Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Invoice Added Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Invoice add fail

newitems[] String

The Items field is required

number String

The Invoice number is already in use

allowed_payment_modes[] String

The Allow Payment Mode field is required

billing_street String

The Billing Street field is required

subtotal String

The Sub Total field is required

total String

The Total field is required

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Invoice Add Fail"
}
    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"number":"The Invoice number is already in use"
		},
		"message": "The Invoice number is already in use"
    }
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "allowed_payment_modes[]": "The Allow Payment Mode field is required."
	    },
	    "message": "<p>The Allow Payment Mode field is required.</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "billing_street": "The Billing Street field is required"
	    },
	    "message": "<p>The Billing Street field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "newitems[]": "The Items field is required"
	    },
	    "message": "<p>The Items field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "subtotal": "The Sub Total field is required"
	    },
	    "message": "<p>The Sub Total field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "total": "The Total field is required"
	    },
	    "message": "<p>The Total field is required</p>\n"
	}

Invoice - Delete invoice

delete
api/invoices/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Invoice Deleted Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Invoice Deleted Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Invoice Delete Fail

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Invoice Delete Fail"
}

Invoice - Request invoice information

get
api/invoices/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Contact unique ID

Success 200

Campo Tipo Descripción
Invoice Object

Invoice information.

  HTTP/1.1 200 OK
  {
      "id": "2",
      "sent": "0",
      "datesend": null,
      "clientid": "1",
      "deleted_customer_name": null,
      "number": "2",
      "prefix": "INV-",
      "number_format": "1",
      "datecreated": "2020-05-26 19:53:11",
      "date": "2020-05-26",
      "duedate": "2020-06-25",
      "currency": "1",
      "subtotal": "5.00",
      "total_tax": "0.00",
      "total": "5.00",
      "adjustment": "0.00",
      "addedfrom": "0",
      "hash": "7bfac86da004df5364407574d4d1dbf2",
      "status": "1",
      "clientnote": null,
      "adminnote": null,
      "last_overdue_reminder": null,
      "cancel_overdue_reminders": "0",
      "allowed_payment_modes": "['1']",
      "token": null,
      "discount_percent": "0.00",
      "discount_total": "0.00",
      "discount_type": "",
      "recurring": "0",
      "recurring_type": null,
      "custom_recurring": "0",
      "cycles": "0",
      "total_cycles": "0",
      "is_recurring_from": null,
      "last_recurring_date": null,
      "terms": null,
      "sale_agent": "0",
      "billing_street": "",
      "billing_city": "",
      "billing_state": "",
      "billing_zip": "",
      "billing_country": null,
      "shipping_street": null,
      "shipping_city": null,
      "shipping_state": null,
      "shipping_zip": null,
      "shipping_country": null,
      "include_shipping": "0",
      "show_shipping_on_invoice": "1",
      "show_quantity_as": "1",
      "project_id": "0",
      "subscription_id": "0",
      "symbol": "$",
      "name": "USD",
      "decimal_separator": ".",
      "thousand_separator": ",",
      "placement": "before",
      "isdefault": "1",
      "currencyid": "1",
      "currency_name": "USD",
      "total_left_to_pay": "5.00",
      "items": [
       {
          "id": "2",
          "rel_id": "2",
          "rel_type": "invoice",
          "description": "12MP Dual Camera with cover",
          "long_description": "The JBL Cinema SB110 is a hassle-free soundbar",
          "qty": "1.00",
          "rate": "5.00",
          "unit": "",
          "item_order": "1"
          }
      ],
      "attachments": [],
      "visible_attachments_to_customer_found": false,
      "client": {
      "userid": "1",
      "company": "trueline",
      "vat": "",
      "phonenumber": "",
      "country": "0",
      "city": "",
      "zip": "",
      "state": "",
      "address": "",
      "website": "",
      "datecreated": "2020-05-19 20:07:49",
      "active": "1",
      "leadid": null,
      "billing_street": "",
      "billing_city": "",
      "billing_state": "",
      "billing_zip": "",
      "billing_country": "0",
      "shipping_street": "",
      "shipping_city": "",
      "shipping_state": "",
      "shipping_zip": "",
      "shipping_country": "0",
      "longitude": null,
      "latitude": null,
      "default_language": "english",
      "default_currency": "0",
      "show_primary_contact": "0",
      "stripe_id": null,
      "registration_confirmed": "1",
      "addedfrom": "1"
  },
  "payments": [],
  "scheduled_email": null
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Invoice - Search invoice information

get
api/invoices/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords.

Success 200

Campo Tipo Descripción
Invoice Object

Information.

HTTP/1.1 200 OK
  {
      "id": "19",
      "sent": "0",
      "datesend": null,
      "clientid": "3",
      "deleted_customer_name": null,
      "number": "19",
      "prefix": "INV-",
      "number_format": "1",
      "datecreated": "2020-08-18 21:19:51",
      "date": "2020-07-04",
      "duedate": "2020-08-03",
      "currency": "1",
      "subtotal": "20.00",
      "total_tax": "1.80",
      "total": "21.80",
      "adjustment": "0.00",
      "addedfrom": "1",
      "hash": "809c0e4c9efba2a3bedfdb5871dc6240",
      "status": "2",
      "clientnote": "",
      "adminnote": "",
      "last_overdue_reminder": null,
      "cancel_overdue_reminders": "0",
      "allowed_payment_modes": "['1']",
      "token": null,
      "discount_percent": "0.00",
      "discount_total": "0.00",
      "discount_type": "",
      "recurring": "0",
      "recurring_type": null,
      "custom_recurring": "0",
      "cycles": "0",
      "total_cycles": "0",
      "is_recurring_from": null,
      "last_recurring_date": null,
      "terms": "",
      "sale_agent": "0",
      "billing_street": "",
      "billing_city": "",
      "billing_state": "",
      "billing_zip": "",
      "billing_country": "0",
      "shipping_street": "",
      "shipping_city": "",
      "shipping_state": "",
      "shipping_zip": "",
      "shipping_country": "0",
      "include_shipping": "0",
      "show_shipping_on_invoice": "1",
      "show_quantity_as": "1",
      "project_id": "0",
      "subscription_id": "0",
      "userid": "3",
      "company": "xyz",
      "vat": "",
      "phonenumber": "",
      "country": "0",
      "city": "",
      "zip": "",
      "state": "",
      "address": "",
      "website": "",
      "active": "1",
      "leadid": null,
      "longitude": null,
      "latitude": null,
      "default_language": "",
      "default_currency": "0",
      "show_primary_contact": "0",
      "stripe_id": null,
      "registration_confirmed": "1",
      "invoiceid": "19"
  }

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No Data Were Found"
}

Invoice - Update invoice

put
api/invoices/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
clientid Number

Mandatory Customer id.

number Number

Mandatory. Invoice Number

date Date

Mandatory. Invoice Date

currency Number

Mandatory. currency field

newitems Array

Mandatory. New Items to be added

subtotal Decimal

Mandatory. calculation based on item Qty, Rate and Tax

total Decimal

Mandatory. calculation based on subtotal, Discount and Adjustment

billing_street String

Mandatory. Street Address

allowed_payment_modes Array

Mandatory. Payment modes

billing_city opcional String

Optional. City Name for billing

billing_state opcional String

Optional. Name of state for billing

billing_zip opcional Number

Optional. Zip code

billing_country opcional Number

Optional. Country code

include_shipping opcional boolean

Optional. set yes if you want add Shipping Address

Valor por defecto: no

show_shipping_on_invoice opcional boolean

Optional. Shows shipping details in invoice.

shipping_street opcional String

Optional. Address of shipping

shipping_city opcional String

Optional. City name for shipping

shipping_state opcional String

Optional. Name of state for shipping

shipping_zip opcional Number

Optional. Zip code for shipping

shipping_country opcional Number

Optional. Country code

duedate opcional Date

Optional. Due date for Invoice

cancel_overdue_reminders opcional boolean

Optional. Prevent sending overdue remainders for invoice

tags opcional String

Optional. TAGS comma separated

sale_agent opcional Number

Optional. Sale Agent name

recurring opcional String

Optional. recurring 1 to 12 or custom

discount_type opcional String

Optional. before_tax / after_tax discount type

repeat_every_custom opcional Number

Optional. if recurring is custom set number gap

repeat_type_custom opcional String

Optional. if recurring is custom set gap option day/week/month/year

cycles opcional Number

Optional. number of cycles 0 for infinite

adminnote opcional String

Optional. notes by admin

items opcional Array

Optional. Existing items with Id

removed_items opcional Array

Optional. Items to be removed

clientnote opcional String

Optional. client notes

terms opcional String

Optional. Terms

{
    "clientid": "1",
    "billing_street": "billing address",
    "billing_city": "billing city name",
    "billing_state": "billing state name",
    "billing_zip": "billing zip code",
    "billing_country": "",
    "include_shipping": "on",
    "show_shipping_on_invoice": "on",
    "shipping_street": "shipping address",
    "shipping_city": "city name",
    "shipping_state": "state name",
    "shipping_zip": "zip code",
    "shipping_country": "",
    "number": "000001",
    "date": "2020-08-28",
    "duedate": "2020-09-27",
    "cancel_overdue_reminders": "on",
    "tags": "TAG 1,TAG 2",
    "allowed_payment_modes": [
        "1",
        "2"
    ],
    "currency": "1",
    "sale_agent": "1",
    "recurring": "custom",
    "discount_type": "before_tax",
    "repeat_every_custom": "7",
    "repeat_type_custom": "day",
    "cycles": "0",
    "adminnote": "TEST",
    "show_quantity_as": "1",
    "items": {
        "1": {
            "itemid": "1",
            "order": "1",
            "description": "item description",
            "long_description": "item long description",
            "qty": "1",
            "unit": "1",
            "rate": "10.00"
        }
    },
    "removed_items": [
        "2",
        "3"
    ],
    "newitems": {
        "2": {
            "order": "2",
            "description": "item 2 description",
            "long_description": "item 2 logn description",
            "qty": "1",
            "unit": "",
            "rate": "100.00"
        }
    },
    "subtotal": "10.00",
    "discount_percent": "10",
    "discount_total": "1.00",
    "adjustment": "1",
    "total": "10.00",
    "clientnote": "client note",
    "terms": "terms"
}
HTTP/1.1 200 OK
{
  "status": false,
  "message": "Invoice Updated Successfully"
}

Error 4xx

Nombre Tipo Descripción
number String

The Invoice number is already in use

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Invoice Update Fail"
}
    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"number":"The Invoice number is already in use"
		},
		"message": "The Invoice number is already in use"
    }

Items

Items - Request items information

get
api/items/items/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
Item Object

item information.

    HTTP/1.1 200 OK
    {
	  "itemid": "1",
       "rate": "100.00",
       "taxrate": "5.00",
       "taxid": "1",
       "taxname": "PAYPAL",
       "taxrate_2": "9.00",
       "taxid_2": "2",
       "taxname_2": "CGST",
       "description": "JBL Soundbar",
       "long_description": "The JBL Cinema SB110 is a hassle-free soundbar",
       "group_id": "0",
       "group_name": null,
       "unit": ""
    }

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Items - Search invoice item information

get
api/items/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords

Success 200

Campo Tipo Descripción
Item Object

Item Information

HTTP/1.1 200 OK
{
  "rate": "100.00",
  "id": "1",
  "name": "(100.00) JBL Soundbar",
  "subtext": "The JBL Cinema SB110 is a hassle-free soundbar..."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status

message String

No data were found

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Lead

Lead - Add New Lead

post
api/leads

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
source String

Mandatory Lead source.

status String

Mandatory Lead Status.

name String

Mandatory Lead Name.

assigned opcional String

Optional Lead assigned.

client_id opcional String

Optional Lead From Customer.

tags opcional String

Optional Lead tags.

contact opcional String

Optional Lead contact.

title opcional String

Optional Position.

email opcional String

Optional Lead Email Address.

website opcional String

Optional Lead Website.

phonenumber opcional String

Optional Lead Phone.

company opcional String

Optional Lead company.

address opcional String

Optional Lead address.

city opcional String

Optional Lead City.

state opcional String

Optional Lead state.

default_language opcional String

Optional Lead Default Language.

description opcional String

Optional Lead description.

custom_contact_date opcional String

Optional Lead From Customer.

contacted_today opcional String

Optional Lead Contacted Today.

is_public opcional String

Optional Lead google sheet id.

array (size=20)
   'status' => string '2' (length=1)
   'source' => string '6' (length=1)
   'assigned' => string '1' (length=1)
   'client_id' => string '5' (length=1)
   'tags' => string '' (length=0)
   'name' => string 'Lead Name' (length=9)
   'contact' => string 'Contact A' (length=9)
   'title' => string 'Position A' (length=10)
   'email' => string 'AAA@gmail.com' (length=13)
   'website' => string '' (length=0)
   'phonenumber' => string '123456789' (length=9)
   'company' => string 'Interactive' (length=20)
   'address' => string '710-712 Cách Mạng Tháng Tám, P. 5, Q. Tân Bình' (length=33)
   'city' => string 'London' (length=6)
   'state' => string '' (length=0)
   'default_language' => string 'english' (length=10)
   'description' => string 'Description' (length=11)
   'custom_contact_date' => string '' (length=0)
   'is_public' => string 'on' (length=2)
   'contacted_today' => string 'on' (length=2)

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Lead add successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Lead add successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

add fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Lead add fail."
}

Lead - Delete a Lead

delete
api/delete/leads/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

lead unique ID.

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Lead Delete Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Lead Delete Successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Lead Delete Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Lead Delete Fail."
}

Lead - Request lead information

get
api/leads/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Lead unique ID.

Success 200

Campo Tipo Descripción
Lead Object

information.

HTTP/1.1 200 OK
{
    "id": "17",
    "hash": "c6e938f8b7a40b1bcfd98dc04f6eeee0-60d9c039da373a685fc0f74d4bfae631",
    "name": "Lead name",
    "contact": "",
    "title": "",
    "company": "Interactive",
    "description": "",
    "country": "243",
    "zip": null,
    "city": "London",
    "state": "London",
    "address": "1a The Alexander Suite Silk Point",
    "assigned": "5",
    "dateadded": "2019-07-18 08:59:28",
    "from_form_id": "0",
    "status": "0",
    "source": "4",
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Lead - Search Lead Information

get
api/leads/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords.

Success 200

Campo Tipo Descripción
Lead Object

information.

HTTP/1.1 200 OK
{
    "id": "17",
    "hash": "c6e938f8b7a40b1bcfd98dc04f6eeee0-60d9c039da373a685fc0f74d4bfae631",
    "name": "Lead name",
    "contact": "",
    "title": "",
    "company": "Interactive",
    "description": "",
    "country": "243",
    "zip": null,
    "city": "London",
    "state": "London",
    "address": "1a The Alexander Suite Silk Point",
    "assigned": "5",
    "dateadded": "2019-07-18 08:59:28",
    "from_form_id": "0",
    "status": "0",
    "source": "4",
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Lead - Update a lead

put
api/leads/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
source String

Mandatory Lead source.

status String

Mandatory Lead Status.

name String

Mandatory Lead Name.

assigned opcional String

Optional Lead assigned.

client_id opcional String

Optional Lead From Customer.

tags opcional String

Optional Lead tags.

contact opcional String

Optional Lead contact.

title opcional String

Optional Position.

email opcional String

Optional Lead Email Address.

website opcional String

Optional Lead Website.

phonenumber opcional String

Optional Lead Phone.

company opcional String

Optional Lead company.

address opcional String

Optional Lead address.

city opcional String

Optional Lead City.

state opcional String

Optional Lead state.

default_language opcional String

Optional Lead Default Language.

description opcional String

Optional Lead description.

lastcontact opcional String

Optional Lead Last Contact.

is_public opcional String

Optional Lead google sheet id.

{
    "name": "Lead name",
    "contact": "contact",
    "title": "title",
    "company": "C.TY TNHH TM VẬN TẢI & DU LỊCH ĐẠI BẢO AN",
    "description": "description",
    "tags": "",
    "city": "London",
    "state": "London",
    "address": "1a The Alexander Suite Silk Point",
    "assigned": "5",
    "source": "4",
    "email": "AA@gmail.com",
    "website": "www.themesic.com",
    "phonenumber": "123456789",
    "is_public": "on",
    "default_language": "english",
    "client_id": "3",
    "lastcontact": "2019-07-31 08:38:04"
}

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Lead Update Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Lead Update Successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Lead Update Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Lead Update Fail."
}

Milestone

Milestone - Add New Milestone

post
api/milestones

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
project_id String

Mandatory project id.

name String

Mandatory Milestone Name.

due_date Date

Mandatory Milestone Due date.

description opcional String

Optional Milestone Description.

description_visible_to_customer opcional String

Show description to customer.

milestone_order opcional String

Optional Milestone Order.

array (size=6)
  'project_id' => string '2' (length=1)
  'name' => string 'Milestone A' (length=11)
  'due_date' => string '2019-07-31' (length=10)
  'description' => string 'Description' (length=11)
  'description_visible_to_customer' => string 'on' (length=2)
  'milestone_order' => string '1' (length=1)

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Milestone add successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Milestone add successful."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Milestone add fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Milestone add fail."
}

Milestone - Delete a Milestone

delete
api/delete/milestones/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Milestone unique ID.

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Milestone Delete Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Milestone Delete Successful."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Milestone Delete Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Milestone Delete Fail."
}

Milestone - Request Milestones information

get
api/milestones/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Milestones unique ID.

Success 200

Campo Tipo Descripción
Milestones Object

information.

  HTTP/1.1 200 OK
{
    "id": "5",
    "name": "MIlestone A",
    "description": "",
    "description_visible_to_customer": "0",
    "due_date": "2019-09-30",
    "project_id": "2",
    "color": null,
    "milestone_order": "1",
    "datecreated": "2019-07-19",
    "total_tasks": "0",
    "total_finished_tasks": "0"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Milestone - Search Milestones Information

get
api/milestones/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords.

Success 200

Campo Tipo Descripción
Milestones Object

information.

HTTP/1.1 200 OK
    {
      "id": "5",
      "name": "MIlestone A",
      "description": "",
      "description_visible_to_customer": "0",
      "due_date": "2019-09-30",
      "project_id": "2",
      "color": null,
      "milestone_order": "1",
      "datecreated": "2019-07-19",
      "total_tasks": "0",
      "total_finished_tasks": "0"
  }

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Milestone - Update a Milestone

put
api/milestones/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
project_id String

Mandatory project id.

name String

Mandatory Milestone Name.

due_date Date

Mandatory Milestone Due date.

description opcional String

Optional Milestone Description.

description_visible_to_customer opcional String

Show description to customer.

milestone_order opcional String

Optional Milestone Order.

{
    "project_id": "1",
    "name": "Milestone A",
    "due_date": "2019-07-31",
    "description": "Description",
    "description_visible_to_customer": "on",
    "milestone_order": "1"
}

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Milestone Update Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Milestone Update Successful."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Milestone Update Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Milestone Update Fail."
}

Project

Project - Add New Project

post
api/projects

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
name String

Mandatory Project Name.

rel_type string

Mandatory Project Related.

Valores permitidos: "lead", "customer", "internal"

clientid Number

Mandatory Related ID.

billing_type Number

Mandatory Billing Type.

start_date Date

Mandatory Project Start Date.

status Number

Mandatory Project Status.

progress_from_tasks opcional String

Optional on or off progress from tasks.

project_cost opcional String

Optional Project Cost.

progress opcional String

Optional project progress.

project_rate_per_hour opcional String

Optional project rate per hour.

estimated_hours opcional String

Optional Project estimated hours.

project_members opcional Number[]

Optional Project members.

deadline opcional Date

Optional Project deadline.

tags opcional String

Optional Project tags.

description opcional String

Optional Project description.

array (size=15)
   'name' => string 'Project Name' (length=12)
   'rel_type' => string 'customer' (length=8)
   'clientid' => string '3' (length=1)
   'progress_from_tasks' => string 'on' (length=2)
   'progress' => string '0' (length=1)
   'billing_type' => string '3' (length=1)
   'status' => string '2' (length=1)
   'project_cost' => string '' (length=0)
   'project_rate_per_hour' => string '' (length=0)
   'estimated_hours' => string '' (length=0)
   'project_members' => 
     array (size=1)
       0 => string '1' (length=1)
   'start_date' => string '2019-07-31' (length=10)
   'deadline' => string '' (length=0)
   'tags' => string '' (length=0)
   'description' => string '' (length=0)

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Project add successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Project add successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Project add fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Project add fail."
}

Project - Delete a Project

delete
api/delete/projects/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

project unique ID.

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Project Delete successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Project Delete Successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Project Delete Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Project Delete Fail."
}

Project - Request project information

get
api/projects/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

project unique ID.

Success 200

Campo Tipo Descripción
Project Object

information.

HTTP/1.1 200 OK
{
     "id": "28",
     "name": "Test1",
     "description": null,
     "status": "1",
     "clientid": "11",
     "billing_type": "3",
     "start_date": "2019-04-19",
     "deadline": "2019-08-30",
     "project_created": "2019-07-16",
     "date_finished": null,
     "progress": "0",
     "progress_from_tasks": "1",
     "project_cost": "0.00",
     "project_rate_per_hour": "0.00",
     "estimated_hours": "0.00",
     "addedfrom": "5",
     "rel_type": "lead",
     "potential_revenue": "0.00",
     "potential_margin": "0.00",
     "external": "E",
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Project - Search Project Information

get
api/projects/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search keywords.

Success 200

Campo Tipo Descripción
Project Object

information.

HTTP/1.1 200 OK
{
     "id": "28",
     "name": "Test1",
     "description": null,
     "status": "1",
     "clientid": "11",
     "billing_type": "3",
     "start_date": "2019-04-19",
     "deadline": "2019-08-30",
     "project_created": "2019-07-16",
     "date_finished": null,
     "progress": "0",
     "progress_from_tasks": "1",
     "project_cost": "0.00",
     "project_rate_per_hour": "0.00",
     "estimated_hours": "0.00",
     "addedfrom": "5",
     "rel_type": "lead",
     "potential_revenue": "0.00",
     "potential_margin": "0.00",
     "external": "E",
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Project - Update a project

put
api/projects/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
name String

Mandatory Project Name.

rel_type string

Mandatory Project Related.

Valores permitidos: "lead", "customer", "internal"

clientid Number

Mandatory Related ID.

billing_type Number

Mandatory Billing Type.

start_date Date

Mandatory Project Start Date.

status Number

Mandatory Project Status.

progress_from_tasks opcional String

Optional on or off progress from tasks.

project_cost opcional String

Optional Project Cost.

progress opcional String

Optional project progress.

project_rate_per_hour opcional String

Optional project rate per hour.

estimated_hours opcional String

Optional Project estimated hours.

project_members opcional Number[]

Optional Project members.

deadline opcional Date

Optional Project deadline.

tags opcional String

Optional Project tags.

description opcional String

Optional Project description.

{
   "name": "Test1",
   "rel_type": "lead",
   "clientid": "9",
   "status": "2",
   "progress_from_tasks": "on",
   "progress": "0.00", 
   "billing_type": "3",
   "project_cost": "0",
   "project_rate_per_hour": "0",
   "estimated_hours": "0",
   "project_members":
    {
        "0": "5"
    }
   "start_date": "2019-04-29",
   "deadline": "2019-04-29",
   "tags": "",
   "description": "",
   "settings": 
     {
       "available_features":
         {
          "0": "project_overview",
           "1": "project_milestones" ,
           "2": "project_gantt" ,
           "3": "project_tasks" ,
           "4": "project_estimates" ,
           "5": "project_credit_notes" ,
           "6": "project_invoices" ,
           "7": "project_expenses",
           "8": "project_subscriptions" ,
           "9": "project_activity" ,
           "10": "project_tickets" ,
           "11": "project_timesheets",
           "12": "project_files" ,
           "13": "project_discussions" ,
           "14": "project_notes" 
        }
    }
}

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Project Update Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Project Update Successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Project Update Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Project Update Fail."
}

Staff

Staff - Add New Staff

post
api/staffs

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
firstname String

Mandatory Staff Name.

email String

Mandatory Staff Related.

password String

Mandatory Staff password.

hourly_rate opcional Number

Optional hourly rate.

phonenumber opcional String

Optional Staff phonenumber.

facebook opcional String

Optional Staff facebook.

linkedin opcional String

Optional Staff linkedin.

skype opcional String

Optional Staff skype.

default_language opcional String

Optional Staff default language.

email_signature opcional String

Optional Staff email signature.

direction opcional String

Optional Staff direction.

send_welcome_email opcional String

Optional Staff send welcome email.

departments opcional Number[]

Optional Staff departments.

 array (size=15)
 'firstname' => string '4' (length=1)
 'email' => string 'a@gmail.com' (length=11)
 'hourly_rate' => string '0' (length=1)
 'phonenumber' => string '' (length=0)
 'facebook' => string '' (length=0)
 'linkedin' => string '' (length=0)
 'skype' => string '' (length=0)
 'default_language' => string '' (length=0)
 'email_signature' => string '' (length=0)
 'direction' => string '' (length=0)
'departments' => 
   array (size=5)
     0 => string '1' (length=1)
     1 => string '2' (length=1)
     2 => string '3' (length=1)
     3 => string '4' (length=1)
     4 => string '5' (length=1)
 'send_welcome_email' => string 'on' (length=2)
 'fakeusernameremembered' => string '' (length=0)
 'fakepasswordremembered' => string '' (length=0)
 'password' => string '1' (length=1)
 'role' => string '18' (length=2)

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Staff add successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Staff add successful."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Staff add fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Staff add fail."
}

Staff - Delete a Staff

delete
api/delete/staffs/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Staff unique ID.

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Staff registration successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Staff Delete."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Not register your accout.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Staff Not Delete."
}

Staff - Request Staff information

get
api/staffs/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Staff unique ID.

Success 200

Campo Tipo Descripción
Staff Object

information.

HTTP/1.1 200 OK
{
     "staffid": "8",
     "email": "data1.gsts@gmail.com",
     "firstname": "Đào Quang Dân",
     "lastname": "",
     "facebook": "",
     "linkedin": "",
     "phonenumber": "",
     "skype": "",
     "password": "$2a$08$ySLokLAM.AqmW9ZjY2YREO0CIrd5K4Td\/Bpfp8d9QJamWNUfreQuK",
     "datecreated": "2019-02-25 09:11:31",
     "profile_image": "8.png",
    ...
}

Error 4xx

Nombre Descripción
StaffNotFound

The id of the Staff was not found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Staff - Search Staff Information

get
api/staffs/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search keywords.

Success 200

Campo Tipo Descripción
Staff Object

information.

HTTP/1.1 200 OK
{
     "staffid": "8",
     "email": "data1.gsts@gmail.com",
     "firstname": "Đào Quang Dân",
     "lastname": "",
     "facebook": "",
     "linkedin": "",
     "phonenumber": "",
     "skype": "",
     "password": "$2a$08$ySLokLAM.AqmW9ZjY2YREO0CIrd5K4Td\/Bpfp8d9QJamWNUfreQuK",
     "datecreated": "2019-02-25 09:11:31",
     "profile_image": "8.png",
    ...
}

Error 4xx

Nombre Descripción
StaffNotFound

The id of the Staff was not found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Staff - Update a Staff

put
api/staffs/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
firstname String

Mandatory Staff Name.

email String

Mandatory Staff Related.

password String

Mandatory Staff password.

hourly_rate opcional Number

Optional hourly rate.

phonenumber opcional String

Optional Staff phonenumber.

facebook opcional String

Optional Staff facebook.

linkedin opcional String

Optional Staff linkedin.

skype opcional String

Optional Staff skype.

default_language opcional String

Optional Staff default language.

email_signature opcional String

Optional Staff email signature.

direction opcional String

Optional Staff direction.

departments opcional Number[]

Optional Staff departments.

{
    "firstname": "firstname",
    "email": "aa454@gmail.com",
    "hourly_rate": "0.00",
    "phonenumber": "",
    "facebook": "",
    "linkedin": "",
    "skype": "",
    "default_language": "",
    "email_signature": "",
    "direction": "",
    "departments": {
        "0": "1",
        "1": "2"
    },
    "password": "123456"
}

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Staff Update Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Staff Update Successful."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Staff Update Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Staff Update Fail."
}

Task

Task - Add New Task

post
api/tasks

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
name String

Mandatory Task Name.

startdate Date

Mandatory Task Start Date.

is_public opcional String

Optional Task public.

billable opcional String

Optional Task billable.

hourly_rate opcional String

Optional Task hourly rate.

milestone opcional String

Optional Task milestone.

duedate opcional Date

Optional Task deadline.

priority opcional String

Optional Task priority.

repeat_every opcional String

Optional Task repeat every.

repeat_every_custom opcional Number

Optional Task repeat every custom.

repeat_type_custom opcional String

Optional Task repeat type custom.

cycles opcional Number

Optional cycles.

rel_type string

Mandatory Task Related.

Valores permitidos: "lead", "customer", "invoice", "project", "quotation", "contract", "annex", "ticket", "expense", "proposal", "contract_energy"

rel_id Number

Optional Related ID.

tags opcional String

Optional Task tags.

description opcional String

Optional Task description.

id_area opcional Number

Optional id of area (Área de Tarea).

id_type opcional Number

Optional id of type (Tipo de Tarea).

array (size=15)
'is_public' => string 'on' (length=2)
'billable' => string 'on' (length=2)
'name' => string 'Task 12' (length=7)
'hourly_rate' => string '0' (length=1)
'milestone' => string '' (length=0)
'startdate' => string '2019-07-31' (length=10)
'duedate' => string '2019-07-31 11:07' (length=16)
'priority' => string '2' (length=1)
'repeat_every' => string '' (length=0)
'repeat_every_custom' => string '1' (length=1)
'repeat_type_custom' => string 'day' (length=3)
'rel_type' => string 'customer' (length=8)
'rel_id' => string '9' (length=1)
'tags' => string '' (length=0)
'description' => string '<span>Task Description</span>' (length=29)
'id_area' => string '9' (length=1)
'id_type' => string '9' (length=1)

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Task add successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Task add successful."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Task add fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Task add fail."
}

Task - Delete a Task

delete
api/delete/tasks/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Task unique ID.

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Task Delete Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Task Delete Successful."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Task Delete Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Task Delete Fail."
}

Task - Request Task information

get
api/tasks/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Task unique ID.

Success 200

Campo Tipo Descripción
Tasks Object

information.

HTTP/1.1 200 OK
{
    "id": "10",
    "name": "Khảo sát chi tiết hiện trạng",
    "description": "",
    "priority": "2",
    "dateadded": "2019-02-25 12:26:37",
    "startdate": "2019-01-02 00:00:00",
    "duedate": "2019-01-04 00:00:00",
    "datefinished": null,
    "addedfrom": "9",
    "is_added_from_contact": "0",
    "status": "4",
    "recurring_type": null,
    "repeat_every": "0",
    "recurring": "0",
    "is_recurring_from": null,
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Task - Request Only Task Energy information

get
api/tasks_energy/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Task unique ID.

Success 200

Campo Tipo Descripción
Tasks Object

information.

HTTP/1.1 200 OK
{
    "id": "10",
    "name": "Khảo sát chi tiết hiện trạng",
    "description": "",
    "priority": "2",
    "dateadded": "2019-02-25 12:26:37",
    "startdate": "2019-01-02 00:00:00",
    "duedate": "2019-01-04 00:00:00",
    "datefinished": null,
    "addedfrom": "9",
    "is_added_from_contact": "0",
    "status": "4",
    "recurring_type": null,
    "repeat_every": "0",
    "recurring": "0",
    "is_recurring_from": null,
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Task - Search Tasks Information

get
api/tasks/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords.

Success 200

Campo Tipo Descripción
Tasks Object

information.

HTTP/1.1 200 OK
{
    "id": "10",
    "name": "Khảo sát chi tiết hiện trạng",
    "description": "",
    "priority": "2",
    "dateadded": "2019-02-25 12:26:37",
    "startdate": "2019-01-02 00:00:00",
    "duedate": "2019-01-04 00:00:00",
    "datefinished": null,
    "addedfrom": "9",
    "is_added_from_contact": "0",
    "status": "4",
    "recurring_type": null,
    "repeat_every": "0",
    "recurring": "0",
    "is_recurring_from": null,
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Task - Update a task

put
api/tasks/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
name String

Mandatory Task Name.

startdate Date

Mandatory Task Start Date.

is_public opcional String

Optional Task public.

billable opcional String

Optional Task billable.

hourly_rate opcional String

Optional Task hourly rate.

milestone opcional String

Optional Task milestone.

duedate opcional Date

Optional Task deadline.

priority opcional String

Optional Task priority.

repeat_every opcional String

Optional Task repeat every.

repeat_every_custom opcional Number

Optional Task repeat every custom.

repeat_type_custom opcional String

Optional Task repeat type custom.

cycles opcional Number

Optional cycles.

rel_type string

Mandatory Task Related.

Valores permitidos: "lead", "customer", "invoice", "project", "quotation", "contract", "annex", "ticket", "expense", "proposal"

rel_id Number

Optional Related ID.

tags opcional String

Optional Task tags.

description opcional String

Optional Task description.

{
    "billable": "1",
    "is_public": "1",
    "name": "Task 1",
    "hourly_rate": "0.00",
    "milestone": "0",
    "startdate": "2019-07-31",
    "duedate": null,
    "priority": "0",
    "repeat_every": "",
    "repeat_every_custom": "1",
    "repeat_type_custom": "day",
    "cycles": "0",
    "rel_type": "lead",
    "rel_id": "11",
    "tags": "",
    "description": ""
}

Success 200

Campo Tipo Descripción
status String

Request status.

message String

Task Update Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Task Update Successful."
}

Error 4xx

Nombre Tipo Descripción
status String

Request status.

message String

Task Update Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Task Update Fail."
}

Ticket

Ticket - Add New Ticket

post
api/tickets

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
subject String

Mandatory Ticket name .

department String

Mandatory Ticket Department.

contactid String

Mandatory Ticket Contact.

userid String

Mandatory Ticket user.

project_id opcional String

Optional Ticket Project.

message opcional String

Optional Ticket message.

service opcional String

Optional Ticket Service.

assigned opcional String

Optional Assign ticket.

cc opcional String

Optional Ticket CC.

priority opcional String

Optional Priority.

tags opcional String

Optional ticket tags.

array (size=11)
 'subject' => string 'ticket name' (length=11)
 'contactid' => string '4' (length=1)
 'userid' => string '5' (length=1)
 'department' => string '2' (length=1)
 'cc' => string '' (length=0)
 'tags' => string '' (length=0)
 'assigned' => string '8' (length=1)
 'priority' => string '2' (length=1)
 'service' => string '2' (length=1)
 'project_id' => string '' (length=0)
 'message' => string '' (length=0)

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Ticket add successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Ticket add successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Ticket add fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Ticket add fail."
}

Ticket - Delete a Ticket

delete
api/delete/tickets/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Ticket unique ID.

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Ticket Delete Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Ticket Delete Successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Ticket Delete Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Ticket Delete Fail."
}

Ticket - Request Ticket information

get
api/tickets/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Ticket unique ID.

Success 200

Campo Tipo Descripción
Ticket Object

information.

HTTP/1.1 200 OK
{
    "ticketid": "7",
    "adminreplying": "0",
    "userid": "0",
    "contactid": "0",
    "email": null,
    "name": "Trung bình",
    "department": "1",
    "priority": "2",
    "status": "1",
    "service": "1",
    "ticketkey": "8ef33d61bb0f26cd158d56cc18b71c02",
    "subject": "Ticket ER",
    "message": "Ticket ER",
    "admin": "5",
    "date": "2019-04-10 03:08:21",
    "project_id": "5",
    "lastreply": null,
    "clientread": "0",
    "adminread": "1",
    "assigned": "5",
    "line_manager": "8",
    "milestone": "27",
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

The id of the Ticket was not found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Ticket - Search Ticket Information

get
api/tickets/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search keywords.

Success 200

Campo Tipo Descripción
Ticket Object

information.

HTTP/1.1 200 OK
{
    "ticketid": "7",
    "adminreplying": "0",
    "userid": "0",
    "contactid": "0",
    "email": null,
    "name": "Trung bình",
    "department": "1",
    "priority": "2",
    "status": "1",
    "service": "1",
    "ticketkey": "8ef33d61bb0f26cd158d56cc18b71c02",
    "subject": "Ticket ER",
    "message": "Ticket ER",
    "admin": "5",
    "date": "2019-04-10 03:08:21",
    "project_id": "5",
    "lastreply": null,
    "clientread": "0",
    "adminread": "1",
    "assigned": "5",
    "line_manager": "8",
    "milestone": "27",
    ...
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

The id of the Ticket was not found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Ticket - Update a ticket

put
api/tickets/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
subject String

Mandatory Ticket name .

department String

Mandatory Ticket Department.

contactid String

Mandatory Ticket Contact.

userid String

Mandatory Ticket user.

priority String

Mandatory Priority.

project_id opcional String

Optional Ticket Project.

message opcional String

Optional Ticket message.

service opcional String

Optional Ticket Service.

assigned opcional String

Optional Assign ticket.

tags opcional String

Optional ticket tags.

{
    "subject": "Ticket ER",
    "department": "1",
    "contactid": "0",
    "ticketid": "7",
    "userid": "0",
    "project_id": "5",
    "message": "Ticket ER",
    "service": "1",
    "assigned": "5",
    "priority": "2",
    "tags": ""
}

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Ticket Update Successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Ticket Update Successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Ticket Update Fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Ticket Update Fail."
}

Credit Notes

Credit Notes - Add New Credit Notes

post
api/credit_notes

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
clientid Number

Mandatory. Customer id

date Date

Mandatory. Credit Note Date

number Number

Mandatory. Credit Note Number

currency Number

Mandatory. currency field

newitems Array

Mandatory. New Items to be added

billing_street String

Optional. Street Address

billing_city opcional String

Optional. City Name for billing

billing_state opcional String

Optional. Name of state for billing

billing_zip opcional Number

Optional. Zip code

billing_country opcional Number

Optional. Country code

shipping_street opcional String

Optional. Address of shipping

shipping_city opcional String

Optional. City name for shipping

shipping_state opcional String

Optional. Name of state for shipping

shipping_zip opcional Number

Optional. Zip code for shipping

shipping_country opcional Number

Optional. Country code

discount_type opcional String

Optional. before_tax / after_tax discount type

Admin opcional String

Note] Optional. Admin Note

subtotal Decimal

Mandatory. calculation based on item Qty, Rate and Tax

total Decimal

Mandatory. calculation based on subtotal, Discount and

clientnote opcional String

Optional. client notes

terms opcional String

Optional. Terms

 [
		"clientid" => 2
		"date" => 2021-08-20
		"number" => 2
		"newitems[0][description]" => item 1 description
		"newitems[0][long_description]" => item 1 long description
		"newitems[0][qty]" => 1
		"newitems[0][rate]" => 1200
		"newitems[0][order]" => 1
		"newitems[0][unit]" => 
		"newitems[0][unit]" => 
		"newitems[0][custom_fields][items][1]" => "new condition"
		"subtotal" => 1200.00
		"total" => 1200.00
		"currency" => 1
		"custom_fields"[credit_note][1]" => customfield_value
]

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Credit Note Added Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Credit Note Added Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Credit Note add fail

newitems[] String

The Items field is required

number String

The Credit Note number is already in use

subtotal String

The Sub Total field is required

total String

The Total field is required

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Credit Note Add Fail"
}
    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"number":"The Credit Note number is already in use"
		},
		"message": "The Credit Note number is already in use"
    }
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "newitems[]": "The Items field is required"
	    },
	    "message": "<p>The Items field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "subtotal": "The Sub Total field is required"
	    },
	    "message": "<p>The Sub Total field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "total": "The Total field is required"
	    },
	    "message": "<p>The Total field is required</p>\n"
	}

Credit Notes - Delete Credit Note

delete
api/credit_notes/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Credit Note Deleted Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Credit Note Deleted Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Credit Note Delete Fail

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Credit Note Delete Fail"
}

Credit Notes - Request Credit notes information

get
api/credit_notes/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
Credit Object

notes information.

    HTTP/1.1 200 OK
    {
	        "id": "2",
	        "clientid": "1",
	        "deleted_customer_name": null,
	        "number": "2",
        "prefix": "CN-",
	        "number_format": "1",
	        "datecreated": "2021-07-30 16:29:46",
	        "date": "2021-08-02",
	        "adminnote": "adminnote2",
        "terms": "",
	        "clientnote": "",
	        "currency": "1",
	        "subtotal": "1200.00",
	        "total_tax": "0.00",
	        "total": "1200.00",
	        "adjustment": "0.00",
	        "addedfrom": "1",
	        "status": "1",
	        "project_id": "0",
	        "discount_percent": "0.00",
	        "discount_total": "0.00",
	        "discount_type": "",
	        "billing_street": "Test",
	        "billing_city": "Test",
	        "billing_state": "Test",
	        "billing_zip": "3000",
	        "billing_country": "102",
	        "shipping_street": "Test",
	        "shipping_city": "Test",
	        "shipping_state": "Test",
	        "shipping_zip": "3000",
	        "shipping_country": "102",
	        "include_shipping": "1",
	        "show_shipping_on_credit_note": "1",
	        "show_quantity_as": "1",
	        "reference_no": "",
	        "userid": "1",
	        "company": "Test",
	        "vat": "",
	        "phonenumber": "01324568903",
	        "country": "102",
	        "city": "Test",
	        "zip": "3000",
	        "state": "Test",
	        "address": "Test",
	        "website": "",
	        "active": "1",
	        "leadid": null,
	        "longitude": null,
	        "latitude": null,
	        "default_language": "",
	        "default_currency": "0",
	        "show_primary_contact": "0",
	        "stripe_id": null,
	        "registration_confirmed": "1",
	        "credit_note_id": "2",
	        "customfields": []
	    }

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Credit Notes - Search credit notes item information

get
api/credit_notes/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords

Success 200

Campo Tipo Descripción
credit Object

notes Information

	HTTP/1.1 200 OK
    {
	        "id": "2",
	        "clientid": "1",
	        "deleted_customer_name": null,
	        "number": "2",
        "prefix": "CN-",
	        "number_format": "1",
	        "datecreated": "2021-07-30 16:29:46",
	        "date": "2021-08-02",
	        "adminnote": "adminnote2",
        "terms": "",
	        "clientnote": "",
	        "currency": "1",
	        "subtotal": "1200.00",
	        "total_tax": "0.00",
	        "total": "1200.00",
	        "adjustment": "0.00",
	        "addedfrom": "1",
	        "status": "1",
	        "project_id": "0",
	        "discount_percent": "0.00",
	        "discount_total": "0.00",
	        "discount_type": "",
	        "billing_street": "Test",
	        "billing_city": "Test",
	        "billing_state": "Test",
	        "billing_zip": "3000",
	        "billing_country": "102",
	        "shipping_street": "Test",
	        "shipping_city": "Test",
	        "shipping_state": "Test",
	        "shipping_zip": "3000",
	        "shipping_country": "102",
	        "include_shipping": "1",
	        "show_shipping_on_credit_note": "1",
	        "show_quantity_as": "1",
	        "reference_no": "",
	        "userid": "1",
	        "company": "test",
	        "vat": "",
	        "phonenumber": "01324568903",
	        "country": "102",
	        "city": "Test",
	        "zip": "3000",
	        "state": "Test",
	        "address": "Test",
	        "website": "",
	        "active": "1",
	        "leadid": null,
	        "longitude": null,
	        "latitude": null,
	        "default_language": "",
	        "default_currency": "0",
	        "show_primary_contact": "0",
	        "stripe_id": null,
	        "registration_confirmed": "1",
	        "credit_note_id": "2",
	        "customfields": []
	    }
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Credit Notes - Update a Credit Note

put
api/credit_notes

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
clientid Number

Mandatory. Customer id

date Date

Mandatory. Credit Note Date

number Number

Mandatory. Credit Note Number

currency Number

Mandatory. currency field

newitems Array

Mandatory. New Items to be added

items Array

Mandatory. Existing items with Id

removed_items Array

Optional. Items to be removed

billing_street String

Optional. Street Address

billing_city opcional String

Optional. City Name for billing

billing_state opcional String

Optional. Name of state for billing

billing_zip opcional Number

Optional. Zip code

billing_country opcional Number

Optional. Country code

shipping_street opcional String

Optional. Address of shipping

shipping_city opcional String

Optional. City name for shipping

shipping_state opcional String

Optional. Name of state for shipping

shipping_zip opcional Number

Optional. Zip code for shipping

shipping_country opcional Number

Optional. Country code

discount_type opcional String

Optional. before_tax / after_tax discount type

Admin opcional String

Note] Optional. Admin Note

subtotal Decimal

Mandatory. calculation based on item Qty, Rate and Tax

total Decimal

Mandatory. calculation based on subtotal, Discount and

clientnote opcional String

Optional. client notes

terms opcional String

Optional. Terms

{
    "clientid": 1,
    "date": "2021-08-20",
    "number": 1,
    "items": {
        "1": {
            "itemid": "25",
            "order": "1",
            "description": "item description",
            "long_description": "item long description",
            "qty": "1",
            "unit": "1",
            "rate": "10.00",
            "custom_fields": {
                "items": {
                    "31": "test 12 item 1",
                    "32": "10",
                    "33": "Lorem Ipsum is simply dummy text of the printing and typesetting industry",
                    "34": "Option 1",
                    "35": [
                        "Option 1",
                        "Option 2"
                    ],
                    "36": [
                        "Option 1",
                        "Option 3"
                    ],
                    "37": "2021-05-06",
                    "38": "2021-05-06 00:23:25",
                    "39": "#ffffff",
                    "40": "<a href=\"url.com\" target=\"_blank\">Link</a>"
                }
            }
        }
    },
    "newitems": {
        "2": {
            "order": "2",
            "description": "updated item 2 description",
            "long_description": "updated item 2 logn description",
            "qty": "1",
            "unit": "",
            "rate": "100.00",
            "custom_fields": {
                "items": {
                    "31": "test 12 item 2",
                    "32": "10",
                    "33": "Lorem Ipsum is simply dummy text of the printing and  typesetting industry",
                    "34": "Option 1",
                    "35": [
                        "Option 1",
                        "Option 2"
                    ],
                    "36": [
                        "Option 1",
                        "Option 3"
                    ],
                    "37": "2021-05-06",
                    "38": "2021-05-06 00:23:25",
                    "39": "#ffffff",
                    "40": "<a href=\"url.com\" target=\"_blank\">Link</a>"
                }
            }
        }
    },
    "custom_fields": {
        "credit_note": {
            "93": "test 1254"
        }
    },
    "subtotal": "1200.00",
    "total": "1200.00",
    "currency": 1
}

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Credit Note Updated Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Credit Note Updated Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Credit Note Update Fail

newitems[] String

The Items field is required

number String

The Credit Note number is already in use

subtotal String

The Sub Total field is required

total String

The Total field is required

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Credit Note Update Fail"
}
    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"number":"The Credit Note number is already in use"
		},
		"message": "The Credit Note number is already in use"
    }
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "newitems[]": "The Items field is required"
	    },
	    "message": "<p>The Items field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "subtotal": "The Sub Total field is required"
	    },
	    "message": "<p>The Sub Total field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "total": "The Total field is required"
	    },
	    "message": "<p>The Total field is required</p>\n"
	}

Custom Fields

Custom Fields - Add Custom Fields

Submit URL for POST request of the custom fields remains the same for each endpoint (ie api/contacts for Contacts endpoint, api/invoices for Invoices endpoint, etc..)

In this example, we will use the following form data which corresponds to the following custom field types:

custom_fields[invoice][1] = Input Type
custom_fields[invoice][2] = Number
custom_fields[invoice][3] = Textarea
custom_fields[invoice][4] = Radio
custom_fields[invoice][5] = Checkbox
custom_fields[invoice][6] = Multiselect
custom_fields[invoice][7] = Date
custom_fields[invoice][8] = Datetime
custom_fields[invoice][9] = Color
custom_fields[invoice][10] = Link

post
N/A

Parámetro

Campo Tipo Descripción
custom_fields[customFieldType] string/array

Custom Field Key should be same as field_name returned from Search custom field values' information

[
   custom_fields[invoice][1] => John Doe
   custom_fields[invoice][2] => 10
   custom_fields[invoice][3] => Lorem Ipsum is simply dummy text of the printing and typesetting industry.
   custom_fields[invoice][4] => Option 1
   custom_fields[invoice][5][] => Option 1
   custom_fields[invoice][5][] => Option 2
   custom_fields[invoice][6][] => Option 1
   custom_fields[invoice][6][] => Option 3
   custom_fields[invoice][7] => 2021-05-06
   custom_fields[invoice][8] => 2021-05-06 00:23:25
   custom_fields[invoice][9] => #FFFFFF
   custom_fields[invoice][10] => <a href="url.com" target="_blank">Link</a>
]
HTTP/1.1 200 OK
 Same as Original request
HTTP/1.1 404 Not Found
Same as Original request

Custom Fields - Delete Custom Fields

To remove particular custom field value you can use Update action and an empty value in the custom field.
Note: When you delete any record the corresponding custom field data will be automatically deleted.

delete
N/A

Custom Fields - Request Custom Fields

Custom fields' data will be returned combined with other request's information during the initial GET request of each available endpoint (Contacts, Invoices etc) with their respective label and value key

get
N/A
HTTP/1.1 200 OK
     {
        "id": "1",
        "sent": "0",
        "datesend": null,
        "clientid": "1",
        "deleted_customer_name": null,
        "number": "10",
        "prefix": "INV-",
        "number_format": "1",
        "datecreated": "2021-05-14 00:44:52",
        "date": "2021-08-28",
        "duedate": "2021-09-27",
        "currency": "1",
        "subtotal": "110.00",
        "total_tax": "0.00",
        "total": "110.00",
        "adjustment": "0.00",
        "addedfrom": "0",
        "hash": "4222d2f53404324ea73535d3c0f2c3f0",
        "status": "1",
        "clientnote": "",
        "adminnote": "",
        "last_overdue_reminder": null,
        "cancel_overdue_reminders": "1",
        "allowed_payment_modes": "a:2:{i:0;s:1:\"1\";i:1;s:1:\"2\";}",
        "token": null,
        "discount_percent": "0.00",
        "discount_total": "0.00",
        "discount_type": "",
        "recurring": "0",
        "recurring_type": null,
        "custom_recurring": "0",
        "cycles": "0",
        "total_cycles": "0",
        "is_recurring_from": null,
        "last_recurring_date": null,
        "terms": "",
        "sale_agent": "0",
        "billing_street": "billing address",
        "billing_city": "billing city name",
        "billing_state": "billing state name",
        "billing_zip": "billing zip code",
        "billing_country": "0",
        "shipping_street": "shipping address",
        "shipping_city": "city name",
        "shipping_state": "state name",
        "shipping_zip": "zip code",
        "shipping_country": "0",
        "include_shipping": "1",
        "show_shipping_on_invoice": "1",
        "show_quantity_as": "1",
        "project_id": "0",
        "subscription_id": "0",
        "short_link": null,
        "symbol": "$",
        "name": "USD",
        "decimal_separator": ".",
        "thousand_separator": ",",
        "placement": "before",
        "isdefault": "1",
        "currencyid": "1",
        "currency_name": "USD",
        "total_left_to_pay": "110.00",
        "items": [
            {
                "id": "1",
                "rel_id": "1",
                "rel_type": "invoice",
                "description": "item description",
                "long_description": "item long description",
                "qty": "1.00",
                "rate": "10.00",
                "unit": "1",
                "item_order": "1",
                "customfields": [
                    {
                        "label": "Input 1",
                        "value": "test 12 item 1"
                    },
                    {
                        "label": "Number 1",
                        "value": "10"
                    },
                    {
                        "label": "Textarea 1",
                        "value": "Lorem Ipsum is simply dummy text of the printing and typesetting industry"
                    },
                    {
                        "label": "Select 1",
                        "value": "Option 1"
                    },
                    {
                        "label": "Multiselect 1",
                        "value": "Option 1, Option 2"
                    },
                    {
                        "label": "Checkbox 1",
                        "value": "Option 1, Option 3"
                    },
                    {
                        "label": "Datepicker 1",
                        "value": "2021-05-06"
                    },
                    {
                        "label": "Datetime Picker 1",
                        "value": "2021-05-06 00:23:25"
                    },
                    {
                        "label": "Colorpicker 1",
                        "value": "#ffffff"
                    },
                    {
                        "label": "Hyperlink 1",
                        "value": "<a>Link</a>"
                    }
                ]
            },
            {
                "id": "2",
                "rel_id": "1",
                "rel_type": "invoice",
                "description": "updated item 2 description",
                "long_description": "updated item 2 logn description",
                "qty": "1.00",
                "rate": "100.00",
                "unit": "",
                "item_order": "2",
                "customfields": [
                    {
                        "label": "Input 1",
                        "value": "test 12 item 2"
                    },
                    {
                        "label": "Number 1",
                        "value": "10"
                    },
                    {
                        "label": "Textarea 1",
                        "value": "Lorem Ipsum is simply dummy text of the printing and typesetting industry"
                    },
                    {
                        "label": "Select 1",
                        "value": "Option 1"
                    },
                    {
                        "label": "Multiselect 1",
                        "value": "Option 1, Option 2"
                    },
                    {
                        "label": "Checkbox 1",
                        "value": "Option 1, Option 3"
                    },
                    {
                        "label": "Datepicker 1",
                        "value": "2021-05-06"
                    },
                    {
                        "label": "Datetime Picker 1",
                        "value": "2021-05-06 00:23:25"
                    },
                    {
                        "label": "Colorpicker 1",
                        "value": "#ffffff"
                    },
                    {
                        "label": "Hyperlink 1",
                        "value": "<a>Link</a>"
                    }
                ]
            }
        ],
        "attachments": [],
        "visible_attachments_to_customer_found": false,
        "client": {
            "userid": "1",
            "company": "updated company",
            "vat": "",
            "phonenumber": "",
            "country": "0",
            "city": "",
            "zip": "",
            "state": "",
            "address": "",
            "website": "",
            "datecreated": "2021-05-14 00:15:06",
            "active": "1",
            "leadid": null,
            "billing_street": "",
            "billing_city": "",
            "billing_state": "",
            "billing_zip": "",
            "billing_country": "0",
            "shipping_street": "",
            "shipping_city": "",
            "shipping_state": "",
            "shipping_zip": "",
            "shipping_country": "0",
            "longitude": null,
            "latitude": null,
            "default_language": "",
            "default_currency": "0",
            "show_primary_contact": "0",
            "stripe_id": null,
            "registration_confirmed": "1",
            "addedfrom": "0"
        },
        "payments": [],
        "scheduled_email": null,
        "customfields": [
            {
                "label": "Input 1",
                "value": "test 12"
            },
            {
                "label": "Number 1",
                "value": "10"
            },
            {
                "label": "Textarea 1",
                "value": "Lorem Ipsum is simply dummy text of the printing and typesetting industry"
            },
            {
                "label": "Select 1",
                "value": "Option 1"
            },
            {
                "label": "Multiselect 1",
                "value": "Option 1, Option 2"
            },
            {
                "label": "Checkbox 1",
                "value": "Option 1, Option 3"
            },
            {
                "label": "Datepicker 1",
                "value": "2021-05-06"
            },
            {
                "label": "Datetime Picker 1",
                "value": "2021-05-06 00:23:25"
            },
            {
                "label": "Colorpicker 1",
                "value": "#ffffff"
            },
            {
                "label": "Hyperlink 1",
                "value": "<a>Link</a>"
            }
        ]
    }
HTTP/1.1 404 Not Found
Same as Original request

Custom Fields - Request Values of Custom Fields

get
api/custom_fields/:FieldBelongsto/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
FieldBelongsto string

Belongs to Mandatory Field Belongs to.

Valores permitidos:
"Company"
,
"Leads"
,
"Customers"
,
"Contacts"
,
"Staff"
,
"Contracts"
,
"Tasks"
,
"Expenses"
,
"Invoice"
,
"Items"
,
"Note"
,
"Estimate"
,
"Proposal"
,
"Projects"
,
"Tickets"

id opcional Number

Optional unique ID.

Success 200

Campo Tipo Descripción
Custom Object

Custom Fields information with values.

  HTTP/1.1 200 OK
[
    {
        "field_name": "custom_fields[invoice][1]",
        "custom_field_id": "1",
        "label": "Input 1",
        "required": "0",
        "type": "input",
        "value": "input1 data"
    },
    {
        "field_name": "custom_fields[invoice][2]",
        "custom_field_id": "2",
        "label": "Number 1",
        "required": "0",
        "type": "number",
        "value": "12"
    },
    {
        "field_name": "custom_fields[invoice][3]",
        "custom_field_id": "3",
        "label": "Textarea 1",
        "required": "0",
        "type": "textarea",
        "value": "textarea content"
    },
    {
        "field_name": "custom_fields[invoice][4]",
        "custom_field_id": "4",
        "label": "Select 1",
        "required": "0",
        "type": "select",
        "value": "[\"Option 1\"]",
        "options": "[\"Option 1\",\"Option 2\",\"Option 3\"]"
    },
    {
        "field_name": "custom_fields[invoice][5]",
        "custom_field_id": "5",
        "label": "Multiselect 1",
        "required": "0",
        "type": "multiselect",
        "value": "[\"Option 1\",\" Option 2\"]",
        "options": "[\"Option 1\",\"Option 2\",\"Option 3\"]"
    },
    {
        "field_name": "custom_fields[invoice][6]",
        "custom_field_id": "6",
        "label": "Checkbox 1",
        "required": "0",
        "type": "checkbox",
        "value": "[\"Option 1\",\" Option 2\"]",
        "options": "[\"Option 1\",\"Option 2\",\"Option 3\"]"
    },
    {
        "field_name": "custom_fields[invoice][7]",
        "custom_field_id": "7",
        "label": "Datepicker 1",
        "required": "0",
        "type": "date_picker",
        "value": "2021-05-16"
    },
    {
        "field_name": "custom_fields[invoice][8]",
        "custom_field_id": "8",
        "label": "Datetime Picker 1",
        "required": "0",
        "type": "date_picker_time",
        "value": "2021-05-25 23:06:00"
    },
    {
        "field_name": "custom_fields[invoice][9]",
        "custom_field_id": "9",
        "label": "Colorpicker 1",
        "required": "0",
        "type": "colorpicker",
        "value": "#8f1b1b"
    },
    {
        "field_name": "custom_fields[invoice][10]",
        "custom_field_id": "10",
        "label": "Hyperlink 1",
        "required": "0",
        "type": "link",
        "value": "<a href=\"https://google.com\" target=\"_blank\">google</a>"
    }
]

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Custom Fields - Search custom field values' information

Custom fields' data will be returned combined with other request's information during the initial SEARCH request of each available endpoint (Contacts, Invoices etc) with their respective label and value key

get
N/A
HTTP/1.1 200 OK
 [
        {
            "id": "1",
            "sent": "0",
            "datesend": null,
            "clientid": "1",
            "deleted_customer_name": null,
            "number": "10",
            "prefix": "INV-",
            "number_format": "1",
            "datecreated": "2021-05-14 00:15:06",
            "date": "2021-08-28",
            "duedate": "2021-09-27",
            "currency": "1",
            "subtotal": "110.00",
            "total_tax": "0.00",
            "total": "110.00",
            "adjustment": "0.00",
            "addedfrom": "0",
            "hash": "4222d2f53404324ea73535d3c0f2c3f0",
            "status": "1",
            "clientnote": "",
            "adminnote": "",
            "last_overdue_reminder": null,
            "cancel_overdue_reminders": "1",
            "allowed_payment_modes": "a:2:{i:0;s:1:\"1\";i:1;s:1:\"2\";}",
            "token": null,
            "discount_percent": "0.00",
            "discount_total": "0.00",
            "discount_type": "",
            "recurring": "0",
            "recurring_type": null,
            "custom_recurring": "0",
            "cycles": "0",
            "total_cycles": "0",
            "is_recurring_from": null,
            "last_recurring_date": null,
            "terms": "",
            "sale_agent": "0",
            "billing_street": "",
            "billing_city": "",
            "billing_state": "",
            "billing_zip": "",
            "billing_country": "0",
            "shipping_street": "",
            "shipping_city": "",
            "shipping_state": "",
            "shipping_zip": "",
            "shipping_country": "0",
            "include_shipping": "1",
            "show_shipping_on_invoice": "1",
            "show_quantity_as": "1",
            "project_id": "0",
            "subscription_id": "0",
            "short_link": null,
            "userid": "1",
            "company": "updated company",
            "vat": "",
            "phonenumber": "",
            "country": "0",
            "city": "",
            "zip": "",
            "state": "",
            "address": "",
            "website": "",
            "active": "1",
            "leadid": null,
            "longitude": null,
            "latitude": null,
            "default_language": "",
            "default_currency": "0",
            "show_primary_contact": "0",
            "stripe_id": null,
            "registration_confirmed": "1",
            "invoiceid": "1",
            "customfields": [
                {
                    "label": "Input 1",
                    "value": "test 12"
                },
                {
                    "label": "Number 1",
                    "value": "10"
                },
                {
                    "label": "Textarea 1",
                    "value": "Lorem Ipsum is simply dummy text of the printing and typesetting industry"
                },
                {
                    "label": "Select 1",
                    "value": "Option 1"
                },
                {
                    "label": "Multiselect 1",
                    "value": "Option 1, Option 2"
                },
                {
                    "label": "Checkbox 1",
                    "value": "Option 1, Option 3"
                },
                {
                    "label": "Datepicker 1",
                    "value": "2021-05-06"
                },
                {
                    "label": "Datetime Picker 1",
                    "value": "2021-05-06 00:23:25"
                },
                {
                    "label": "Colorpicker 1",
                    "value": "#ffffff"
                },
                {
                    "label": "Hyperlink 1",
                    "value": "<a>Link</a>"
                }
            ]
        },
        {
            "id": "2",
            "sent": "0",
            "datesend": null,
            "clientid": "1",
            "deleted_customer_name": null,
            "number": "4",
            "prefix": "INV-",
            "number_format": "1",
            "datecreated": "2021-05-14 00:15:06",
            "date": "2021-05-28",
            "duedate": "2021-06-27",
            "currency": "1",
            "subtotal": "110.00",
            "total_tax": "0.00",
            "total": "110.00",
            "adjustment": "0.00",
            "addedfrom": "0",
            "hash": "630f8cc7ed2e6a70c4113ab24041bdf5",
            "status": "6",
            "clientnote": "",
            "adminnote": "",
            "last_overdue_reminder": null,
            "cancel_overdue_reminders": "1",
            "allowed_payment_modes": "a:2:{i:0;s:1:\"1\";i:1;s:1:\"2\";}",
            "token": null,
            "discount_percent": "0.00",
            "discount_total": "0.00",
            "discount_type": "",
            "recurring": "0",
            "recurring_type": null,
            "custom_recurring": "0",
            "cycles": "0",
            "total_cycles": "0",
            "is_recurring_from": null,
            "last_recurring_date": null,
            "terms": "",
            "sale_agent": "0",
            "billing_street": "",
            "billing_city": "",
            "billing_state": "",
            "billing_zip": "",
            "billing_country": "0",
            "shipping_street": "",
            "shipping_city": "",
            "shipping_state": "",
            "shipping_zip": "",
            "shipping_country": "0",
            "include_shipping": "1",
            "show_shipping_on_invoice": "1",
            "show_quantity_as": "1",
            "project_id": "0",
            "subscription_id": "0",
            "short_link": null,
            "userid": "1",
            "company": "updated company",
            "vat": "",
            "phonenumber": "",
            "country": "0",
            "city": "",
            "zip": "",
            "state": "",
            "address": "",
            "website": "",
            "active": "1",
            "leadid": null,
            "longitude": null,
            "latitude": null,
            "default_language": "",
            "default_currency": "0",
            "show_primary_contact": "0",
            "stripe_id": null,
            "registration_confirmed": "1",
            "invoiceid": "2",
            "customfields": [
                {
                    "label": "Input 1",
                    "value": "test 12"
                },
                {
                    "label": "Number 1",
                    "value": "10"
                },
                {
                    "label": "Textarea 1",
                    "value": "Lorem Ipsum is simply dummy text of the printing and typesetting industry"
                },
                {
                    "label": "Select 1",
                    "value": "Option 1"
                },
                {
                    "label": "Multiselect 1",
                    "value": "Option 1, Option 2"
                },
                {
                    "label": "Checkbox 1",
                    "value": "Option 1, Option 3"
                },
                {
                    "label": "Datepicker 1",
                    "value": "2021-05-06"
                },
                {
                    "label": "Datetime Picker 1",
                    "value": "2021-05-06 00:23:25"
                },
                {
                    "label": "Colorpicker 1",
                    "value": "#ffffff"
                },
                {
                    "label": "Hyperlink 1",
                    "value": "<a>Link</a>"
                }
            ]
        }
    ]
HTTP/1.1 404 Not Found
Same as Original request

Custom Fields - Update Custom Fields

Submit URL for PUT request of the custom fields remains the same for each endpoint (ie api/contacts for Contacts endpoint, api/invoices for Invoices endpoint, etc..)

In this example, we will use the following form data which corresponds to the following custom field types:

custom_fields[invoice][1] = Input Type
custom_fields[invoice][2] = Number
custom_fields[invoice][3] = Textarea
custom_fields[invoice][4] = Radio
custom_fields[invoice][5] = Checkbox
custom_fields[invoice][6] = Multiselect
custom_fields[invoice][7] = Date
custom_fields[invoice][8] = Datetime
custom_fields[invoice][9] = Color
custom_fields[invoice][10] = Link

put
N/A

Parámetro

Campo Tipo Descripción
custom_fields[customFieldType] string/array

Custom Field JSON should be same as below with field_name and custom_field_id returned from Search custom field values' information

{
    "custom_fields": {
        "invoice": {
            "1": "test 12 item 1",
            "2": "10",
            "3": "Lorem Ipsum is simply dummy text of the printing and typesetting industry",
            "4": "Option 1",
            "5": [
                "Option 1",
                "Option 2"
            ],
            "6": [
                "Option 1",
                "Option 3"
            ],
            "7": "2021-05-06",
            "8": "2021-05-06 00:23:25",
            "9": "#ffffff",
            "10": "<a href=\"url.com\" target=\"_blank\">Link</a>"
        }
    }
}
HTTP/1.1 200 OK
 Same as Original request
HTTP/1.1 404 Not Found
Same as Original request

Estimates

Estimates - Add New Estimates

post
api/estimates

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
clientid Number

Mandatory. Customer id

number Number

Mandatory. Estimates Number

date Date

Mandatory. Estimates Date

duedate opcional Date

Optional. Expiry Date of Estimates

currency Number

Mandatory. currency field

newitems Array

Mandatory. New Items to be added

subtotal Decimal

Mandatory. calculation based on item Qty, Rate and Tax

total Decimal

Mandatory. calculation based on subtotal, Discount and Adjustment

billing_street String

Optional. Street Address

billing_city opcional String

Optional. City Name for billing

billing_state opcional String

Optional. Name of state for billing

billing_zip opcional Number

Optional. Zip code

billing_country opcional Number

Optional. Country code

shipping_street opcional String

Optional. Address of shipping

shipping_city opcional String

Optional. City name for shipping

shipping_state opcional String

Optional. Name of state for shipping

shipping_zip opcional Number

Optional. Zip code for shipping

shipping_country opcional Number

Optional. Country code

tags opcional String

Optional. TAGS comma separated

status opcional Number

Optional. Status id (default status is Accepted)

Reference opcional String

Optional. Reference name

sale_agent opcional Number

Optional. Sale Agent name

adminnote opcional String

Optional. notes by admin

clientnote opcional String

Optional. client notes

terms opcional String

Optional. Terms

  [
		"clientid"=>1,
		"number"=>"00001",
		"date"=>"2020-09-07",
		"currency"=>1,
		"newitems[0][description]"=>"item 1 description",
		"newitems[0][long_description]"=>"item 1 long description",
		"newitems[0][qty]"=>1,
		"newitems[0][rate]"=>100,
		"newitems[0][order]"=>1,
		"newitems[0][taxname][]"=>CGST|9.00,
		"newitems[0][taxname][]"=>SGST|9.00,
		"newitems[0][unit]"=>"",
		"newitems[1][description]"=>"item 2 description",
		"newitems[1][long_description]"=>"item 2 long description",
		"newitems[1][qty]"=>1,
		"newitems[1][rate]"=>100,
		"newitems[1][order]"=>1,
		"newitems[1][taxname][]"=>CGST|9.00,
		"newitems[1][taxname][]"=>SGST|9.00,
		"newitems[1][unit]"=>"",
		"subtotal"=>236.00,
		"total"=>236.00,
		"status"=>1,
		....
	]

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Estimates Added Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Estimates Added Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Estimates add fail

newitems[] String

The Items field is required

number String

The Estimates number is already in use

subtotal String

The Sub Total field is required

total String

The Total field is required

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Estimates Add Fail"
}
    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"number":"The Estimates number is already in use"
		},
		"message": "The Estimates number is already in use"
    }
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "newitems[]": "The Items field is required"
	    },
	    "message": "<p>The Items field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "subtotal": "The Sub Total field is required"
	    },
	    "message": "<p>The Sub Total field is required</p>\n"
	}
  HTTP/1.1 404 Not Found
   {
	    "status": false,
	    "error": {
	        "total": "The Total field is required"
	    },
	    "message": "<p>The Total field is required</p>\n"
	}

Estimates - Delete Estimate

delete
api/estimates/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Estimates Deleted Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Estimate Deleted Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Estimate Delete Fail

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Estimate Delete Fail"
}

Estimates - Request Estimate information

get
api/estimates/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Contact unique ID

Success 200

Campo Tipo Descripción
Estimates Object

information.

  HTTP/1.1 200 OK
  {
	    "id": "1",
	    "sent": "0",
	    "datesend": null,
	    "clientid": "1",
	    "deleted_customer_name": null,
	    "project_id": "0",
	    "number": "1",
	    "prefix": "EST-",
	    "number_format": "1",
	    "hash": "b12ae9de6471d0cf153d7846f05128af",
	    "datecreated": "2021-07-31 11:06:49",
	    "date": "2021-07-31",
	    "expirydate": "2021-08-07",
	    "currency": "1",
	    "subtotal": "1200.00",
	    "total_tax": "0.00",
	    "total": "1200.00",
	    "adjustment": "0.00",
	    "addedfrom": "1",
	    "status": "1",
	    "clientnote": "",
	    "adminnote": "",
	    "discount_percent": "0.00",
	    "discount_total": "0.00",
	    "discount_type": "",
	    "invoiceid": null,
	    "invoiced_date": null,
	    "terms": "",
	    "reference_no": "",
	    "sale_agent": "0",
	    "billing_street": "Thangadh, Gujarat, India<br />\r\nShipping",
	    "billing_city": "Thangadh",
	    "billing_state": "Gujarat",
	    "billing_zip": "363630",
	    "billing_country": "102",
	    "shipping_street": "Thangadh, Gujarat, India<br />\r\nShipping",
	    "shipping_city": "Thangadh",
	    "shipping_state": "Gujarat",
	    "shipping_zip": "363630",
	    "shipping_country": "102",
	    "include_shipping": "1",
	    "show_shipping_on_estimate": "1",
	    "show_quantity_as": "1",
	    "pipeline_order": "0",
	    "is_expiry_notified": "0",
	    "acceptance_firstname": null,
	    "acceptance_lastname": null,
	    "acceptance_email": null,
	    "acceptance_date": null,
	    "acceptance_ip": null,
	    "signature": null,
	    "short_link": null,
	    "symbol": "$",
	    "name": "USD",
	    "decimal_separator": ".",
	    "thousand_separator": ",",
	    "placement": "before",
	    "isdefault": "1",
	    "currencyid": "1",
	    "currency_name": "USD",
	    "attachments": [],
	    "visible_attachments_to_customer_found": false,
	    "items": [
	        {
	            "id": "2",
	            "rel_id": "1",
	            "rel_type": "estimate",
	            "description": "test",
	            "long_description": "test",
	            "qty": "1.00",
	            "rate": "1200.00",
	            "unit": "1",
	            "item_order": "1"
	        }
	    ],
	    "client": {
	        "userid": "1",
	        "company": "test",
	        "vat": "",
	        "phonenumber": "01324568903",
	        "country": "102",
	        "city": "test",
	        "zip": "3000",
	        "state": "Test",
	        "address": "Test",
	        "website": "",
	        "datecreated": "2021-07-30 16:29:46",
	        "active": "1",
	        "leadid": null,
	        "billing_street": "Test",
	        "billing_city": "Test",
	        "billing_state": "Test",
	        "billing_zip": "3000",
	        "billing_country": "102",
	        "shipping_street": "Test",
	        "shipping_city": "Test",
	        "shipping_state": "Test",
	        "shipping_zip": "3000",
	        "shipping_country": "102",
	        "longitude": null,
	        "latitude": null,
	        "default_language": "",
	        "default_currency": "0",
	        "show_primary_contact": "0",
	        "stripe_id": null,
	        "registration_confirmed": "1",
	        "addedfrom": "1"
	    },
	    "scheduled_email": null,
	    "customfields": []
	}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Estimates - Search Estimate information

get
api/estimates/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords.

Success 200

Campo Tipo Descripción
Estimate Object

Information.

HTTP/1.1 200 OK
 {
    "id": "2",
    "sent": "0",
    "datesend": null,
    "clientid": "1",
    "deleted_customer_name": null,
    "project_id": "0",
    "number": "2",
    "prefix": "EST-",
    "number_format": "1",
    "hash": "ac754972999f948ade369c70bb44d696",
    "datecreated": "2021-07-30 16:29:46",
    "date": "2021-08-01",
    "expirydate": "2021-08-08",
    "currency": "1",
    "subtotal": "1200.00",
    "total_tax": "0.00",
    "total": "1200.00",
    "adjustment": "0.00",
    "addedfrom": "1",
    "status": "1",
    "clientnote": "",
    "adminnote": "adminnote",
    "discount_percent": "0.00",
    "discount_total": "0.00",
    "discount_type": "",
    "invoiceid": null,
    "invoiced_date": null,
    "terms": "",
    "reference_no": "",
    "sale_agent": "0",
    "billing_street": "Test",
    "billing_city": "Test",
    "billing_state": "Test",
    "billing_zip": "3000",
    "billing_country": "102",
    "shipping_street": "Test",
    "shipping_city": "Test",
    "shipping_state": "Test",
    "shipping_zip": "3000",
    "shipping_country": "102",
    "include_shipping": "1",
    "show_shipping_on_estimate": "1",
    "show_quantity_as": "1",
    "pipeline_order": "0",
    "is_expiry_notified": "0",
    "acceptance_firstname": null,
    "acceptance_lastname": null,
    "acceptance_email": null,
    "acceptance_date": null,
    "acceptance_ip": null,
    "signature": null,
    "short_link": null,
    "userid": "1",
    "company": "test",
    "vat": "",
    "phonenumber": "01324568903",
    "country": "102",
    "city": "Test",
    "zip": "3000",
    "state": "Test",
    "address": "Test",
    "website": "",
    "active": "1",
    "leadid": null,
    "longitude": null,
    "latitude": null,
    "default_language": "",
    "default_currency": "0",
    "show_primary_contact": "0",
    "stripe_id": null,
    "registration_confirmed": "1",
    "estimateid": "2",
   "customfields": []
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No Data Were Found"
}

Estimates - Update a estimate

put
api/estimates/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
clientid String

Mandatory. Customer.

billing_street String

Mandatory. Street Address

billing_city opcional String

Optional. City Name for billing

billing_state opcional String

Optional. Name of state for billing

billing_zip opcional Number

Optional. Zip code

billing_country opcional Number

Optional. Country code

include_shipping opcional boolean

Optional. set yes if you want add Shipping Address

Valor por defecto: no

show_shipping_on_estimate opcional boolean

Optional. Shows shipping details in estimate.

shipping_street opcional String

Optional. Address of shipping

shipping_city opcional String

Optional. City name for shipping

shipping_state opcional String

Optional. Name of state for shipping

shipping_zip opcional Number

Optional. Zip code for shipping

shipping_country opcional Number

Optional. Country code

number Number

Mandatory. Estimate Number

date Date

Mandatory. Estimate Date

expirydate opcional Date

Optional. Expiry Date of Estimate

tags opcional String

Optional. TAGS comma separated

currency Number

Mandatory. currency field

status Number

Mandatory. Estimate Status(eg. Draft, Sent)

reference_no opcional String

Optional. Reference #

sale_agent opcional Number

Optional. Sale Agent name

discount_type opcional String

Optional. before_tax / after_tax discount type

adminnote opcional String

Optional. notes by admin

items opcional Array

Mandatory. Existing items with Id

removed_items opcional Array

Optional. Items to be removed

newitems opcional Array

Optional. New Items to be added

subtotal Decimal

Mandatory. calculation based on item Qty, Rate and Tax

total Decimal

Mandatory. calculation based on subtotal, Discount and Adjustment

clientnote opcional String

Optional. client notes

terms opcional String

Optional. Terms

{
    "clientid": 1,
    "billing_street": "new 1 update",
    "number": 2,
    "status": 2,
    "date": "2021-08-19",
    "currency": 1,
    "items": {
        "1": {
            "itemid": "24",
            "order": "1",
            "description": "item description",
            "long_description": "item long description",
            "qty": "1",
            "unit": "1",
            "rate": "10.00",
            "custom_fields": {
                "items": {
                    "31": "test 12 item 1",
                    "32": "10",
                    "33": "Lorem Ipsum is simply dummy text of the printing and typesetting industry",
                    "34": "Option 1",
                    "35": [
                        "Option 1",
                        "Option 2"
                    ],
                    "36": [
                        "Option 1",
                        "Option 3"
                    ],
                    "37": "2021-05-06",
                    "38": "2021-05-06 00:23:25",
                    "39": "#ffffff",
                    "40": "<a href=\"url.com\" target=\"_blank\">Link</a>"
                }
            }
        }
    },
    "newitems": {
        "2": {
            "order": "2",
            "description": "updated item 2 description",
            "long_description": "updated item 2 logn description",
            "qty": "1",
            "unit": "",
            "rate": "100.00",
            "custom_fields": {
                "items": {
                    "31": "test 12 item 2",
                    "32": "10",
                    "33": "Lorem Ipsum is simply dummy text of the printing and typesetting industry",
                    "34": "Option 1",
                    "35": [
                        "Option 1",
                        "Option 2"
                    ],
                    "36": [
                        "Option 1",
                        "Option 3"
                    ],
                    "37": "2021-05-06",
                    "38": "2021-05-06 00:23:25",
                    "39": "#ffffff",
                    "40": "<a href=\"url.com\" target=\"_blank\">Link</a>"
                }
            }
        }
    },
    "custom_fields": {
        "estimate": {
            "92": "test 1254"
        }
    },
    "subtotal": "110.00",
    "total": "110.00"
}
HTTP/1.1 200 OK
{
  "status": false,
  "message": "Estimate Updated Successfully"
}

Error 4xx

Nombre Tipo Descripción
number String

The Estimate number is already in use

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Estimate Update Fail"
}
    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"number":"The Estimate number is already in use"
		},
		"message": "The Estimate number is already in use"
    }

Expense category

Expense category - Request Expense category

get
api/common/expense_category

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
Expense Array

category information.

HTTP/1.1 200 OK
{

   [
       {
           "id": "1",
           "name": "cloud server",
           "description": "AWS server"
       },
       {
           "id": "2",
           "name": "website domain",
           "description": "domain Managment and configurations"
       }
   ]

}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Expenses

Expenses - Add Expense

post
api/expenses

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
expense_name opcional String

Optional. Expanse Name

note opcional String

Optional. Expanse Note

category Number

Mandatory. Expense Category

amount Decimal

Mandatory. Expense Amount

date Date

Mandatory. Expense Date

clientid Number

Optional. Customer id

currency Number

Mandatory. Currency Field

tax Number

Optional. Tax 1

tax2 Number

Optional. Tax 2

paymentmode Number

Optional. Payment mode

reference_no opcional String

Optional. Reference #

recurring opcional String

Optional. recurring 1 to 12 or custom

repeat_every_custom opcional Number

Optional. if recurring is custom set number gap

repeat_type_custom opcional String

Optional. if recurring is custom set gap option day/week/month/year

{
    "expense_name": "Test51",
    "note": "Expanse note",
    "category": 300,
    "date": "2021-08-20",
    "amount": "1200.00",
    "billable": 1,
    "clientid": 1,
    "currency": 1,
    "tax": 1,
    "tax2": 1,
    "paymentmode": 2,
    "reference_no": 5874,
    "repeat_every": "6-month",
    "cycles": 5,
    "create_invoice_billable": 0,
    "send_invoice_to_customer": 1,
    "custom_fields": {
        "expenses": {
            "94": "test 1254"
        }
    }
}

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Expense Added Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Expense Added Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Expense Update Fail

category String

The Expense Category is not found.

date String

The Expense date field is required.

amount String

The Amount field is required.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Expense Add Fail"
}
HTTP/1.1 409 Conflict
{
  "status": false,
  "error": {
     "category":"The Expense Category is not found"
 },
 "message": "The Expense Category is not found"
}
HTTP/1.1 409 Conflict
{
  "status": false,
  "error": {
     "date":"The Expense date field is required."
 },
 "message": "The Expense date field is required."
}
HTTP/1.1 409 Conflict
{
  "status": false,
  "error": {
     "amount":"The Amount field is required."
 },
 "message": "The Amount field is required."
}

Expenses - Delete Expense

delete
api/expenses/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Expense Deleted Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Expense Deleted Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Expense Delete Fail

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Expense Delete Fail"
}

Expenses - Request Expense information

get
api/expenses/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Expense unique ID.

Success 200

Campo Tipo Descripción
Expense Array

Expense information.

[
    {
        "id": "1",
        "category": "1",
        "currency": "1",
        "amount": "50.00",
        "tax": "0",
        "tax2": "0",
        "reference_no": "012457893",
        "note": "AWS server hosting charges",
        "expense_name": "Cloud Hosting",
        "clientid": "1",
        "project_id": "0",
        "billable": "0",
        "invoiceid": null,
        "paymentmode": "2",
        "date": "2021-09-01",
        "recurring_type": "month",
        "repeat_every": "1",
        "recurring": "1",
        "cycles": "12",
        "total_cycles": "0",
        "custom_recurring": "0",
        "last_recurring_date": null,
        "create_invoice_billable": "0",
        "send_invoice_to_customer": "0",
        "recurring_from": null,
        "dateadded": "2021-09-01 12:26:34",
        "addedfrom": "1",
        "is_expense_created_in_xero": "0",
        "userid": "1",
        "company": "Company A",
        "vat": "",
        "phonenumber": "",
        "country": "0",
        "city": "",
        "zip": "",
        "state": "",
        "address": "",
        "website": "",
        "datecreated": "2020-05-25 22:55:49",
        "active": "1",
        "leadid": null,
        "billing_street": "",
        "billing_city": "",
        "billing_state": "",
        "billing_zip": "",
        "billing_country": "0",
        "shipping_street": "",
        "shipping_city": "",
        "shipping_state": "",
        "shipping_zip": "",
        "shipping_country": "0",
        "longitude": null,
        "latitude": null,
        "default_language": "",
        "default_currency": "0",
        "show_primary_contact": "0",
        "stripe_id": null,
        "registration_confirmed": "1",
        "name": "Hosting Management",
        "description": "server space and other settings",
        "show_on_pdf": "0",
        "invoices_only": "0",
        "expenses_only": "0",
        "selected_by_default": "0",
        "taxrate": null,
        "category_name": "Hosting Management",
        "payment_mode_name": "Paypal",
        "tax_name": null,
        "tax_name2": null,
        "taxrate2": null,
        "expenseid": "1",
        "customfields": []
    }
]

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Expenses - Search Expenses information

get
api/expenses/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords

Success 200

Campo Tipo Descripción
Expenses Array

Expenses Information

[
    {
        "id": "1",
        "category": "1",
        "currency": "1",
        "amount": "50.00",
        "tax": "0",
        "tax2": "0",
        "reference_no": "012457893",
        "note": "AWS server hosting charges",
        "expense_name": "Cloud Hosting",
        "clientid": "1",
        "project_id": "0",
        "billable": "0",
        "invoiceid": null,
        "paymentmode": "2",
        "date": "2021-09-01",
        "recurring_type": "month",
        "repeat_every": "1",
        "recurring": "1",
        "cycles": "12",
        "total_cycles": "0",
        "custom_recurring": "0",
        "last_recurring_date": null,
        "create_invoice_billable": "0",
        "send_invoice_to_customer": "0",
        "recurring_from": null,
        "dateadded": "2021-09-01 12:26:34",
        "addedfrom": "1",
        "is_expense_created_in_xero": "0",
        "userid": "1",
        "company": "Company A",
        "vat": "",
        "phonenumber": "",
        "country": "0",
        "city": "",
        "zip": "",
        "state": "",
        "address": "",
        "website": "",
        "datecreated": "2020-05-25 22:55:49",
        "active": "1",
        "leadid": null,
        "billing_street": "",
        "billing_city": "",
        "billing_state": "",
        "billing_zip": "",
        "billing_country": "0",
        "shipping_street": "",
        "shipping_city": "",
        "shipping_state": "",
        "shipping_zip": "",
        "shipping_country": "0",
        "longitude": null,
        "latitude": null,
        "default_language": "",
        "default_currency": "0",
        "show_primary_contact": "0",
        "stripe_id": null,
        "registration_confirmed": "1",
        "name": "Hosting Management",
        "description": "server space and other settings",
        "show_on_pdf": "0",
        "invoices_only": "0",
        "expenses_only": "0",
        "selected_by_default": "0",
        "taxrate": null,
        "category_name": "Hosting Management",
        "payment_mode_name": "Paypal",
        "tax_name": null,
        "tax_name2": null,
        "taxrate2": null,
        "expenseid": "1",
        "customfields": []
    }
]

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status

message String

No data were found

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Expenses - Update a Expense

put
api/expenses

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
expense_name opcional String

Optional. Name

note opcional String

Optional. Note

category Number

Mandatory. Expense Category

amount Decimal

Mandatory. Expense Amount

date Date

Mandatory. Expense Date

clientid Number

Optional. Customer id

currency Number

Mandatory. currency field

tax Number

Optional. Tax 1

tax2 Number

Optional. Tax 2

paymentmode Number

Optional. Payment mode

reference_no opcional String

Optional. Reference #

recurring opcional String

Optional. recurring 1 to 12 or custom

repeat_every_custom opcional Number

Optional. if recurring is custom set number gap

repeat_type_custom opcional String

Optional. if recurring is custom set gap option day/week/month/year

{
    "expense_name": "Test51",
    "note": "exp note",
    "category": 300,
    "date": "2021-08-20",
    "amount": "1200.00",
    "billable": 1,
    "clientid": 1,
    "currency": 1,
    "tax": 1,
    "tax2": 1,
    "paymentmode": 2,
    "reference_no": 5874,
    "repeat_every": "6-month",
    "cycles": 5,
    "create_invoice_billable": 0,
    "send_invoice_to_customer": 1,
    "custom_fields": {
        "expenses": {
            "94": "test 1254"
        }
    }
}

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Expense Updated Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Expense Updated Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Expense Update Fail

category String

The Expense Category is not found.

date String

The Expense date field is required.

amount String

The Amount field is required.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Expense Update Fail"
}
HTTP/1.1 409 Conflict
{
  "status": false,
  "error": {
     "category":"The Expense Category is not found"
 },
 "message": "The Expense Category is not found"
}
HTTP/1.1 409 Conflict
{
  "status": false,
  "error": {
     "date":"The Expense date field is required."
 },
 "message": "The Expense date field is required."
}
HTTP/1.1 409 Conflict
{
  "status": false,
  "error": {
     "amount":"The Amount field is required."
 },
 "message": "The Amount field is required."
}

List Taxes

List Taxes - Request Taxes

get
api/common/tax_data

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
Tax Array

information.

 HTTP/1.1 200 OK
[
    {
        "id": "4",
        "name": "PAYPAL",
        "taxrate": "5.00"
    },
    {
        "id": "1",
        "name": "CGST",
        "taxrate": "9.00"
    },
    {
        "id": "2",
        "name": "SGST",
        "taxrate": "9.00"
    },
    {
        "id": "3",
        "name": "GST",
        "taxrate": "18.00"
    }
]

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Payment Mode

Payment Mode - Request Payment Modes

get
api/common/payment_mode

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Success 200

Campo Tipo Descripción
Payment Array

Modes.

 HTTP/1.1 200 OK
[
    {
        "id": "1",
        "name": "Bank",
        "description": null,
        "show_on_pdf": "0",
        "invoices_only": "0",
        "expenses_only": "0",
        "selected_by_default": "1",
        "active": "1"
    }
]

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Payments

Payments - List all Payments

get
api/payments/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
payment_id Number

Optional payment unique ID
Note : if you don't pass Payment id then it will list all payments records

Success 200

Campo Tipo Descripción
Payments Array

List all Payment Records.

  HTTP/1.1 200 OK
[
    {
        "id": "3",
        "invoiceid": "7",
        "amount": "1000.00",
        "paymentmode": "3",
        "paymentmethod": "",
        "date": "2020-06-08",
        "daterecorded": "2020-06-08 20:29:54",
        "note": "",
        "transactionid": "000355795931",
        "name": "UPI",
        "description": "",
        "show_on_pdf": "0",
        "invoices_only": "0",
        "expenses_only": "0",
        "selected_by_default": "0",
        "active": "1",
        "paymentid": "1"
    },
    {
        "id": "4",
        "invoiceid": "12",
        "amount": "-3.00",
        "paymentmode": "4",
        "paymentmethod": "",
        "date": "2020-07-04",
        "daterecorded": "2020-07-04 15:32:59",
        "note": "",
        "transactionid": "P228210122733439",
        "name": "Stripe",
        "description": "",
        "show_on_pdf": "0",
        "invoices_only": "0",
        "expenses_only": "0",
        "selected_by_default": "0",
        "active": "1",
        "paymentid": "2"
    },
    {
        "id": "1",
        "invoiceid": "14",
        "amount": "8.00",
        "paymentmode": "1",
        "paymentmethod": "",
        "date": "2020-07-04",
        "daterecorded": "2020-07-04 15:47:30",
        "note": "",
        "transactionid": "000360166374",
        "name": "Bank",
        "description": null,
        "show_on_pdf": "0",
        "invoices_only": "0",
        "expenses_only": "0",
        "selected_by_default": "1",
        "active": "1",
        "paymentid": "3"
    },
    {
        "id": "2",
        "invoiceid": "13",
        "amount": "3.00",
        "paymentmode": "2",
        "paymentmethod": "Credit card",
        "date": "2020-07-04",
        "daterecorded": "2020-07-04 15:49:56",
        "note": "",
        "transactionid": "0124875873",
        "name": "paypal",
        "description": "",
        "show_on_pdf": "0",
        "invoices_only": "0",
        "expenses_only": "0",
        "selected_by_default": "0",
        "active": "1",
        "paymentid": "4"
    }
]

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Payments - Search Payments Information

get
api/contacts/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords

Success 200

Campo Tipo Descripción
Payments Array

Payments information

HTTP/1.1 200 OK
[
    {
        "id": "3",
        "invoiceid": "14",
        "amount": "8.00",
        "paymentmode": "2",
        "paymentmethod": "",
        "date": "2020-07-04",
        "daterecorded": "2020-07-04 15:47:30",
        "note": "",
        "transactionid": "",
        ...
    }
]

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status

message String

No data were found

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Proposals

Proposals - Add New Proposals

post
api/proposals

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
subject String

Mandatory. Proposal Subject Name.

   string

Proposal Related.

Valores permitidos: "lead", "customer"

rel_id Number

Mandatory. Related ID.

proposal_to string

Mandatory. Lead / Customer name.

date Date

Mandatory. Proposal Start Date.

open_till Date

Optional. Proposal Open Till Date.

currency string

Mandatory. currency id.

discount_type string

Optional. Proposal Open Till Date.

status string

Optional. status id.

Assigned string

Optional. Assignee id.

Email string

Mandatory. Email id.

newitems Array

Mandatory. New Items to be added.

[
	"subject" => proposal subject
	"rel_type" => customer
	"rel_id" => 1
	"proposal_to" => John Doe
	"email" => customer@mail.com
	"date" => 2021-08-19
	"newitems[0][description]" => item 1 description
	"newitems[0][long_description]" => item 1 long description
	"newitems[0][qty]" => 1
	"newitems[0][rate]" => 1200
	"newitems[0][order]" => 1
	"newitems[0][unit]" => 1
	"newitems[0][unit]" => 1
	"newitems[0][custom_fields][items][1]" => custom field item
	"subtotal" => 1200.00
	"total" => 1200.00
	"currency" => 1
	"date" => 2021-08-19
	"status"  =>  6
	"custom_fields"[proposal][1]  =>  test
	....
]

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Proposal add successful.

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Proposal add successful."
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Proposal add fail.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Proposal add fail."
}

Proposals - Delete Proposal

delete
api/proposals/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Proposal unique ID.

Success 200

Campo Tipo Descripción
status Boolean

Request status.

message String

Proposals Deleted Successfully

HTTP/1.1 200 OK
{
  "status": true,
  "message": "Proposals Deleted Successfully"
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

Proposals Delete Fail

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Proposal Delete Fail"
}

Proposals - Request Proposal information

get
api/proposals/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
id Number

Proposal unique ID

Success 200

Campo Tipo Descripción
Proposal Object

information.

  HTTP/1.1 200 OK
  {
	    "id": "1",
	    "subject": "Test Proposal",
	    "content": "{proposal_items}",
	    "addedfrom": "1",
	    "datecreated": "2021-08-01 13:38:08",
	    "total": "10.00",
	    "subtotal": "10.00",
	    "total_tax": "0.00",
	    "adjustment": "0.00",
	    "discount_percent": "0.00",
	    "discount_total": "0.00",
	    "discount_type": "",
	    "show_quantity_as": "1",
	    "currency": "1",
	    "open_till": "2021-08-08",
	    "date": "2021-08-01",
	    "rel_id": "1",
	    "rel_type": "customer",
	    "assigned": "0",
	    "hash": "9fc38e5ad2f8256b1b8430ee41069f75",
	    "proposal_to": "test",
	    "country": "102",
	    "zip": "30000202",
	    "state": "Test",
	    "city": "Test",
	    "address": "Test",
	    "email": "test@gmail.com",
	    "phone": "01324568903",
	    "allow_comments": "1",
	    "status": "6",
	    "estimate_id": null,
	    "invoice_id": null,
	    "date_converted": null,
	    "pipeline_order": "0",
	    "is_expiry_notified": "0",
	    "acceptance_firstname": null,
	    "acceptance_lastname": null,
	    "acceptance_email": null,
	    "acceptance_date": null,
	    "acceptance_ip": null,
	    "signature": null,
	    "short_link": null,
	    "symbol": "$",
	    "name": "USD",
	    "decimal_separator": ".",
	    "thousand_separator": ",",
	    "placement": "before",
	    "isdefault": "1",
	    "currencyid": "1",
	    "currency_name": "USD",
	    "attachments": [],
	    "items": [
	        {
	            "id": "4",
	            "rel_id": "1",
	            "rel_type": "proposal",
	            "description": "item 1",
	            "long_description": "item 1 description",
	            "qty": "1.00",
	            "rate": "10.00",
	            "unit": "1",
	            "item_order": "1"
	        }
	    ],
	    "visible_attachments_to_customer_found": false,
	    "customfields": [
	        {
	            "label": "Custom Field",
	            "value": "Custom Field value"
	        }
	    ]
	}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Proposals - Search proposals information

get
api/proposals/search/:keysearch

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
keysearch String

Search Keywords.

Success 200

Campo Tipo Descripción
Proposals Object

Information.

 HTTP/1.1 200 OK
   {
 "id": "2",
 "subject": "Test 2",
 "content": "{proposal_items}",
 "addedfrom": "1",
"datecreated": "2021-08-01 13:43:49",
 "total": "10.00",
 "subtotal": "10.00",
 "total_tax": "0.00",
 "adjustment": "0.00",
 "discount_percent": "0.00",
 "discount_total": "0.00",
 "discount_type": "",
 "show_quantity_as": "1",
 "currency": "1",
 "open_till": "2021-08-08",
 "date": "2021-08-01",
 "rel_id": "1",
 "rel_type": "customer",
 "assigned": "0",
 "hash": "6fe6cd0bc66dff03663154660acc1a93",
 "proposal_to": "test",
 "country": "102",
 "zip": "300000",
 "state": "test",
 "city": "test",
 "address": "test",
 "email": "test@gmail.com",
 "phone": "01324568903",
 "allow_comments": "1",
 "status": "6",
 "estimate_id": null,
 "invoice_id": null,
 "date_converted": null,
 "pipeline_order": "0",
 "is_expiry_notified": "0",
 "acceptance_firstname": null,
 "acceptance_lastname": null,
 "acceptance_email": null,
 "acceptance_date": null,
 "acceptance_ip": null,
 "signature": null,
 "short_link": null,
 "symbol": "$",
 "name": "USD",
 "decimal_separator": ".",
 "thousand_separator": ",",
 "placement": "before",
 "isdefault": "1",
 "customfields": [
     {
         "label": "Custom Field",
	        "value": "Custom Field value"
     }
  ]
}

Error 4xx

Nombre Tipo Descripción
status Boolean

Request status.

message String

No data were found.

HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No Data Were Found"
}

Proposals - Update a proposal

put
api/proposal/:id

Header

Campo Tipo Descripción
Authorization String

Basic Access Authentication token.

Parámetro

Campo Tipo Descripción
subject String

Mandatory. Proposal Subject Name.

   string

Proposal Related.

Valores permitidos: "lead", "customer"

rel_id Number

Mandatory. Related ID.

proposal_to string

Mandatory. Lead / Customer name.

date Date

Mandatory. Proposal Start Date.

open_till Date

Optional. Proposal Open Till Date.

currency string

Mandatory. currency id.

discount_type string

Optional. Proposal Open Till Date.

status string

Optional. status id.

Assigned string

Optional. Assignee id.

Email string

Mandatory. Email id.

newitems Array

Mandatory. New Items to be added.

items Array

Optional. Existing items with Id

removed_items Array

Optional. Items to be removed

 	{
		"subject": "Test",
		"rel_type": "customer",
		"rel_id": 1,
		"proposal_to": "Trueline 1",
		"email": "test@mail.com",
		"date": "2021-08-19",
		"currency": 1,
		"status": 6,
		"items": {
		    "1": {
		        "itemid": "23",
		        "order": "1",
		        "description": "item description",
		        "long_description": "item long description",
		        "qty": "1",
		        "unit": "1",
		        "rate": "10.00"