API Guide

Table des matières

DjaBoo REST API #

Available commands & examples of DjaBoo REST API #

Introduction #

The DjaBoo API functions through HTTPS and employs JSON as its data format. It operates as a RESTful API and incorporates HTTP methods and HTTP status codes to indicate requests and responses.

To access the API, you must obtain an API token that is linked to the entire DjaBoo application. This can be done by activating our module and following the necessary steps to obtain the token.



API activation #

Step 1) Go to your DjaBoo Admin area and select the following menu item: SETUP → MODULES.
Step 2) Find the DjaBoo API module in the list, press ACTIVATE.


Create an API token #

Step 1) Sign in into you DjaBoo backend as an admin, go to API → API Management, and create a new token.
Make sure to copy the token and that you fill all necessary information.


Usage of the API #

Below, we have provided examples of the available commands for the API and their corresponding request-response pairs. If you are not familiar with REST APIs, we recommend hiring a professional to assist you with setting up third-party connections. Please note that understanding the basics of REST APIs is a prerequisite for using this tool, and providing guidance on this topic falls outside the scope of our support plan terms.


Sample usage – Example of GET command #

For this dummy example, we will use a dummy token.

Let’s say your new token is jEheVytlAoFl7F8MqUQ7jAo2hOXAS and that you need to list all available customers, using the API, through a cURL request.

The command that you will need to execute at your terminal, is the following:

curl -H "authtoken: jEheVytlAoFl7F8MqUQ7jAo2hOXAS" https://myaccount.djaboo.app/api/customers

The response that you are supposed to receive, under a 200 OK status code, will be similar to the following:

[
   {
      "stripe_id" : null,
      "active" : "1",
      "vat" : "1234567890",
      "address" : "Test Address",
      "billing_country" : "0",
      "phonenumber" : "1234567890",
      "registration_confirmed" : "1",
      "longitude" : null,
      "billing_city" : "",
      "state" : "Test State",
      "shipping_zip" : "",
      "billing_zip" : "",
      "city" : "Test City",
      "shipping_country" : "0",
      "billing_street" : "",
      "datecreated" : "2019-11-29 12:34:56",
      "company" : "Jk Technologies",
      "shipping_street" : "",
      "zip" : "123456",
      "billing_state" : "",
      "leadid" : null,
      "addedfrom" : "8",
      "userid" : "3",
      "default_language" : "english",
      "shipping_state" : "",
      "show_primary_contact" : "0",
      "country" : "102",
      "default_currency" : "3",
      "shipping_city" : "",
      "latitude" : null,
      "website" : "https://example.com"
   },
   {
      "website" : "https://example2.com",
      "latitude" : null,
      "default_currency" : "0",
      "shipping_city" : "London",
      "country" : "235",
      "show_primary_contact" : "0",
      "shipping_state" : "Greater London",
      "default_language" : "",
      "addedfrom" : "1",
      "userid" : "1",
      "leadid" : null,
      "billing_state" : "Greater London",
      "zip" : "WC1 ASW",
      "shipping_street" : "123 Road Street",
      "company" : "Sample Company LTD",
      "datecreated" : "2019-04-02 13:38:28",
      "billing_street" : "123 Road Street",
      "shipping_country" : "235",
      "city" : "London",
      "billing_zip" : "WC1 ASW",
      "shipping_zip" : "WC1 ASW",
      "longitude" : null,
      "registration_confirmed" : "1",
      "billing_city" : "London",
      "state" : "Greater London",
      "phonenumber" : "+44 210 7298299",
      "billing_country" : "235",
      "address" : "123 Road Street",
      "vat" : "123456789",
      "active" : "1",
      "stripe_id" : null
   }
]

Custom fields #

All commands support custom fields, starting from version 1.0.2 of the module.

Please take a look at the Custom Fields section in order to ensure the correct implementation of each request that includes custom fields

Customer #

Customer – Add New Customer #

POST yourdomain.com/api/customers

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
companyStringMandatory Customer company.
vat (optional)StringOptional Vat.
phonenumber (optional)StringOptional Customer Phone.
website (optional)StringOptional Customer Website.
groups_in (optional)Number[]Optional Customer groups.
default_language (optional)StringOptional Customer Default Language.
default_currency (optional)StringOptional default currency.
address (optional)StringOptional Customer address.
city (optional)StringOptional Customer City.
state (optional)StringOptional Customer state.
zip (optional)StringOptional Zip Code.
partnership_type (optional)StringOptional Customer partnership type.
country (optional)StringOptional country.
billing_street (optional)StringOptional Billing Address: Street.
billing_city (optional)StringOptional Billing Address: City.
billing_state (optional)NumberOptional Billing Address: State.
billing_zip (optional)StringOptional Billing Address: Zip.
billing_country (optional)StringOptional Billing Address: Country.
shipping_street (optional)StringOptional Shipping Address: Street.
shipping_city (optional)StringOptional Shipping Address: City.
shipping_state (optional)StringOptional Shipping Address: State.
shipping_zip (optional)StringOptional Shipping Address: Zip.
shipping_country (optional)StringOptional Shipping Address: Country.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringCustomer add successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringCustomer add fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Customer add successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Customer add fail."
}

Customer – Delete a Customer #

DELETE yourdomain.com/api/delete/customers/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberCustomer unique ID.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringCustomer Delete Successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringCustomer Delete Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Customer Delete Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Customer Delete Fail."
}

Customer – Request customer information #

GET yourdomain.com/api/customers/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumbercustomer unique ID.

Success 200 #

json

ChampTypeDescription
customerObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Customer – Search Customer Information #

GET yourdomain.com/api/customers/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords.

Success 200 #

json

ChampTypeDescription
customerObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Customer – Update a Customer #

PUT yourdomain.com/api/customers/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
companyStringMandatory Customer company.
vat (optional)StringOptional Vat.
phonenumber (optional)StringOptional Customer Phone.
website (optional)StringOptional Customer Website.
groups_in (optional)Number[]Optional Customer groups.
default_language (optional)StringOptional Customer Default Language.
default_currency (optional)StringOptional default currency.
address (optional)StringOptional Customer address.
city (optional)StringOptional Customer City.
state (optional)StringOptional Customer state.
zip (optional)StringOptional Zip Code.
country (optional)StringOptional country.
billing_street (optional)StringOptional Billing Address: Street.
billing_city (optional)StringOptional Billing Address: City.
billing_state (optional)NumberOptional Billing Address: State.
billing_zip (optional)StringOptional Billing Address: Zip.
billing_country (optional)StringOptional Billing Address: Country.
shipping_street (optional)StringOptional Shipping Address: Street.
shipping_city (optional)StringOptional Shipping Address: City.
shipping_state (optional)StringOptional Shipping Address: State.
shipping_zip (optional)StringOptional Shipping Address: Zip.
shipping_country (optional)StringOptional Shipping Address: Country.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringCustomer Update Successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringCustomer Update Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Customer Update Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Customer Update Fail."
}

Contact #

Contact – Add New Contact #

POST yourdomain.com/api/contacts/

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
customer_idNumberMandatory Customer id.
firstnameStringMandatory First Name
lastnameStringMandatory Last Name
emailStringMandatory E-mail
title (optional)StringOptional Position
phonenumber (optional)StringOptional Phone Number
direction (optional)StringOptional Direction (rtl or ltr)Valeur par défaut : rtl
password (optional)StringOptional password (only required if you pass send_set_password_email parameter)
is_primary (optional)StringOptional Primary Contact (set on or don’t pass it)Valeur par défaut : on
donotsendwelcomeemail (optional)StringOptional Do Not Send Welcome Email (set on or don’t pass it)
send_set_password_email (optional)StringOptional Send Set Password Email (set on or don’t pass it)
permissions (optional)ArrayOptional 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 (optional)StringOptional E-Mail Notification for Invoices (set value same as name or don’t pass it)Valeur par défaut : invoice_emails
estimate_emails (optional)StringOptional E-Mail Notification for Estimate (set value same as name or don’t pass it)Valeur par défaut : estimate_emails
credit_note_emails (optional)StringOptional E-Mail Notification for Credit Note (set value same as name or don’t pass it)Valeur par défaut : credit_note_emails
project_emails (optional)StringOptional E-Mail Notification for Project (set value same as name or don’t pass it)Valeur par défaut : project_emails
ticket_emails (optional)StringOptional E-Mail Notification for Tickets (set value same as name or don’t pass it)Valeur par défaut : ticket_emails
task_emails (optional)StringOptional E-Mail Notification for Task (set value same as name or don’t pass it)Valeur par défaut : task_emails
contract_emails (optional)StringOptional E-Mail Notification for Contract (set value same as name or don’t pass it)Valeur par défaut : contract_emails

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringContact added successfully.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status
messageStringContact add fail
emailStringThis Email is already exists
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Contact added successfully"
}
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Contact add fail"
}

Contact – Delete Contact #

DELETE yourdomain.com/api/delete/contacts/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
customer_idNumberunique Customer id

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringContact Deleted Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status
messageStringContact Delete Fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Contact Deleted Successfully"
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Contact Delete Fail"
}

Contact – List all Contacts of a Customer #

GET yourdomain.com/api/contacts/:customer_id/:contact_id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
customer_idNumberMandatory Customer unique ID
contact_idNumberOptional Contact unique ID
Note : if you don’t pass Contact id then it will list all contacts of the customer

Success 200 #

json

ChampTypeDescription
ContactObjectContact information

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status
messageStringNo data were found
  • Success-Response:
    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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Contact – Search Contact Information #

GET yourdomain.com/api/contacts/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords

Success 200 #

json

ChampTypeDescription
ContactObjectContact information

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status
messageStringNo data were found
  • Success-Response:
 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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Contact – Update Contact Information #

PUT yourdomain.com/api/contacts/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
idNumberMandatory Customer Contact id.
firstnameStringMandatory First Name
lastnameStringMandatory Last Name
emailStringMandatory E-mail
title (optional)StringOptional Position
phonenumber (optional)StringOptional Phone Number
direction (optional)StringOptional Direction (rtl or ltr)Valeur par défaut : rtl
password (optional)StringOptional password (only required if you pass send_set_password_email parameter)
is_primary (optional)StringOptional Primary Contact (set on or don’t pass it)Valeur par défaut : on
donotsendwelcomeemail (optional)StringOptional Do Not Send Welcome Email (set on or don’t pass it)
send_set_password_email (optional)StringOptional Send Set Password Email (set on or don’t pass it)
permissions (optional)ArrayOptional 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 (optional)StringOptional E-Mail Notification for Invoices (set value same as name or don’t pass it)Valeur par défaut : invoice_emails
estimate_emails (optional)StringOptional E-Mail Notification for Estimate (set value same as name or don’t pass it)Valeur par défaut : estimate_emails
credit_note_emails (optional)StringOptional E-Mail Notification for Credit Note (set value same as name or don’t pass it)Valeur par défaut : credit_note_emails
project_emails (optional)StringOptional E-Mail Notification for Project (set value same as name or don’t pass it)Valeur par défaut : project_emails
ticket_emails (optional)StringOptional E-Mail Notification for Tickets (set value same as name or don’t pass it)Valeur par défaut : ticket_emails
task_emails (optional)StringOptional E-Mail Notification for Task (set value same as name or don’t pass it)Valeur par défaut : task_emails
contract_emails (optional)StringOptional E-Mail Notification for Contract (set value same as name or don’t pass it)Valeur par défaut : contract_emails

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status
messageStringContact updated successful

Error 4xx #

json

NomTypeDescription
emailStringThis Email is already exists
statusBooleanRequest status
messageStringContact add fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Contact Updated Successfully"
}
  • Error-Response:
  • Error-Response:
    HTTP/1.1 409 Conflict
    {
      "status": false,
      "error": {
			"email":"This Email is already exists"
		},
		"message": "This Email is already exists"
    }

Invoice #

Invoice – Add New invoice #

POST yourdomain.com/api/invoices

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
clientidNumberMandatory. Customer id
numberNumberMandatory. Invoice Number
dateDateMandatory. Invoice Date
currencyNumberMandatory. currency field
newitemsArrayMandatory. New Items to be added, supporting description, price, qty, long_description, order, taxname
subtotalDecimalMandatory. calculation based on item Qty, Rate and Tax
totalDecimalMandatory. calculation based on subtotal, Discount and Adjustment
billing_streetStringMandatory. Street Address
allowed_payment_modesArrayMandatory. Payment modes
billing_city (optional)StringOptional. City Name for billing
billing_state (optional)StringOptional. Name of state for billing
billing_zip (optional)NumberOptional. Zip code
billing_country (optional)NumberOptional. Country code
include_shipping (optional)booleanOptional. set yes if you want add Shipping AddressValeur par défaut : no
show_shipping_on_invoice (optional)booleanOptional. Shows shipping details in invoice.
shipping_street (optional)StringOptional. Address of shipping
shipping_city (optional)StringOptional. City name for shipping
shipping_state (optional)StringOptional. Name of state for shipping
shipping_zip (optional)NumberOptional. Zip code for shipping
shipping_country (optional)NumberOptional. Country code
duedate (optional)DateOptional. Due date for Invoice
cancel_overdue_reminders (optional)booleanOptional. Prevent sending overdue remainders for invoice
tags (optional)StringOptional. TAGS comma separated
sale_agent (optional)NumberOptional. Sale Agent name
recurring (optional)StringOptional. recurring 1 to 12 or custom
discount_type (optional)StringOptional. before_tax / after_tax discount type
repeat_every_custom (optional)NumberOptional. if recurring is custom set number gap
repeat_type_custom (optional)StringOptional. if recurring is custom set gap option day/week/month/year
cycles (optional)NumberOptional. number of cycles 0 for infinite
adminnote (optional)StringOptional. notes by admin
clientnote (optional)StringOptional. client notes
terms (optional)StringOptional. Terms

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringInvoice Added Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringInvoice add fail
newitems[]StringThe Items field is required
numberStringThe Invoice number is already in use
allowed_payment_modes[]StringThe Allow Payment Mode field is required
billing_streetStringThe Billing Street field is required
subtotalStringThe Sub Total field is required
totalStringThe Total field is required
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Invoice Added Successfully"
}
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Invoice Add Fail"
}

Invoice – Delete invoice #

DELETE yourdomain.com/api/invoices/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringInvoice Deleted Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringInvoice Delete Fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Invoice Deleted Successfully"
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Invoice Delete Fail"
}

Invoice – Request invoice information #

GET yourdomain.com/api/invoices/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberContact unique ID

Success 200 #

json

ChampTypeDescription
InvoiceObjectInvoice information.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
  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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Invoice – Search invoice information #

GET yourdomain.com/api/invoices/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords.

Success 200 #

json

ChampTypeDescription
InvoiceObjectInformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No Data Were Found"
}

Invoice – Update invoice #

PUT yourdomain.com/api/invoices/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
clientidNumberMandatory Customer id.
numberNumberMandatory. Invoice Number
dateDateMandatory. Invoice Date
currencyNumberMandatory. currency field
newitemsArrayMandatory. New Items to be added
subtotalDecimalMandatory. calculation based on item Qty, Rate and Tax
totalDecimalMandatory. calculation based on subtotal, Discount and Adjustment
billing_streetStringMandatory. Street Address
allowed_payment_modesArrayMandatory. Payment modes
billing_city (optional)StringOptional. City Name for billing
billing_state (optional)StringOptional. Name of state for billing
billing_zip (optional)NumberOptional. Zip code
billing_country (optional)NumberOptional. Country code
include_shipping (optional)booleanOptional. set yes if you want add Shipping AddressValeur par défaut : no
show_shipping_on_invoice (optional)booleanOptional. Shows shipping details in invoice.
shipping_street (optional)StringOptional. Address of shipping
shipping_city (optional)StringOptional. City name for shipping
shipping_state (optional)StringOptional. Name of state for shipping
shipping_zip (optional)NumberOptional. Zip code for shipping
shipping_country (optional)NumberOptional. Country code
duedate (optional)DateOptional. Due date for Invoice
cancel_overdue_reminders (optional)booleanOptional. Prevent sending overdue remainders for invoice
tags (optional)StringOptional. TAGS comma separated
sale_agent (optional)NumberOptional. Sale Agent name
recurring (optional)StringOptional. recurring 1 to 12 or custom
discount_type (optional)StringOptional. before_tax / after_tax discount type
repeat_every_custom (optional)NumberOptional. if recurring is custom set number gap
repeat_type_custom (optional)StringOptional. if recurring is custom set gap option day/week/month/year
cycles (optional)NumberOptional. number of cycles 0 for infinite
adminnote (optional)StringOptional. notes by admin
items (optional)ArrayOptional. Existing items with Id
removed_items (optional)ArrayOptional. Items to be removed
clientnote (optional)StringOptional. client notes
terms (optional)StringOptional. Terms

Error 4xx #

json

NomTypeDescription
numberStringThe Invoice number is already in use
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": false,
  "message": "Invoice Updated Successfully"
}
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Invoice Update Fail"
}

Items #

Items – Request items information #

GET yourdomain.com/api/items/items/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
ItemObjectitem information.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
    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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Items – Search invoice item information #

GET yourdomain.com/api/items/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords

Success 200 #

json

ChampTypeDescription
ItemObjectItem Information

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status
messageStringNo data were found
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Lead #

Lead – Add New Lead #

POST yourdomain.com/api/leads

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
sourceStringMandatory Lead source.
statusStringMandatory Lead Status.
nameStringMandatory Lead Name.
assigned (optional)StringOptional Lead assigned.
client_id (optional)StringOptional Lead From Customer.
tags (optional)StringOptional Lead tags.
contact (optional)StringOptional Lead contact.
title (optional)StringOptional Position.
email (optional)StringOptional Lead Email Address.
website (optional)StringOptional Lead Website.
phonenumber (optional)StringOptional Lead Phone.
company (optional)StringOptional Lead company.
address (optional)StringOptional Lead address.
city (optional)StringOptional Lead City.
state (optional)StringOptional Lead state.
country (optional)StringOptional Lead Country.
default_language (optional)StringOptional Lead Default Language.
description (optional)StringOptional Lead description.
custom_contact_date (optional)StringOptional Lead From Customer.
contacted_today (optional)StringOptional Lead Contacted Today.
is_public (optional)StringOptional Lead google sheet id.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringLead add successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringadd fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Lead add successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Lead add fail."
}

Lead – Delete a Lead #

DELETE yourdomain.com/api/delete/leads/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberlead unique ID.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringLead Delete Successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringLead Delete Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Lead Delete Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Lead Delete Fail."
}

Lead – Request lead information #

GET yourdomain.com/api/leads/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberLead unique ID.

Success 200 #

json

ChampTypeDescription
LeadObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
HTTP/1.1 200 OK
{
    "id": "17",
    "hash": "c6e938f8b7a40b1bcfd98dc04f6eeee0-60d9c039da373a685fc0f74d4bfae631",
    "name": "Lead name",
    "contact": "",
    "title": "",
    "company": "Djaboo app",
    "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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Lead – Search Lead Information #

GET yourdomain.com/api/leads/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords.

Success 200 #

json

ChampTypeDescription
LeadObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
HTTP/1.1 200 OK
{
    "id": "17",
    "hash": "c6e938f8b7a40b1bcfd98dc04f6eeee0-60d9c039da373a685fc0f74d4bfae631",
    "name": "Lead name",
    "contact": "",
    "title": "",
    "company": "DjaBoo App",
    "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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Lead – Update a lead #

PUT yourdomain.com/api/leads/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
sourceStringMandatory Lead source.
statusStringMandatory Lead Status.
nameStringMandatory Lead Name.
assigned (optional)StringOptional Lead assigned.
client_id (optional)StringOptional Lead From Customer.
tags (optional)StringOptional Lead tags.
contact (optional)StringOptional Lead contact.
title (optional)StringOptional Position.
email (optional)StringOptional Lead Email Address.
website (optional)StringOptional Lead Website.
phonenumber (optional)StringOptional Lead Phone.
company (optional)StringOptional Lead company.
address (optional)StringOptional Lead address.
city (optional)StringOptional Lead City.
state (optional)StringOptional Lead state.
country (optional)StringOptional Lead Country.
default_language (optional)StringOptional Lead Default Language.
description (optional)StringOptional Lead description.
lastcontact (optional)StringOptional Lead Last Contact.
is_public (optional)StringOptional Lead google sheet id.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringLead Update Successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringLead Update Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Lead Update Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Lead Update Fail."
}

Milestone #

Milestone – Add New Milestone #

POST yourdomain.com/api/milestones

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
project_idStringMandatory project id.
nameStringMandatory Milestone Name.
due_dateDateMandatory Milestone Due date.
description (optional)StringOptional Milestone Description.
description_visible_to_customer (optional)StringShow description to customer.
milestone_order (optional)StringOptional Milestone Order.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringMilestone add successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringMilestone add fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Milestone add successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Milestone add fail."
}

Milestone – Delete a Milestone #

DELETE yourdomain.com/api/delete/milestones/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberMilestone unique ID.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringMilestone Delete Successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringMilestone Delete Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Milestone Delete Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Milestone Delete Fail."
}

Milestone – Request Milestones information #

GET yourdomain.com/api/milestones/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberMilestones unique ID.

Success 200 #

json

ChampTypeDescription
MilestonesObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
  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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Milestone – Search Milestones Information #

GET yourdomain.com/api/milestones/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords.

Success 200 #

json

ChampTypeDescription
MilestonesObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Milestone – Update a Milestone #

PUT yourdomain.com/api/milestones/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
project_idStringMandatory project id.
nameStringMandatory Milestone Name.
due_dateDateMandatory Milestone Due date.
description (optional)StringOptional Milestone Description.
description_visible_to_customer (optional)StringShow description to customer.
milestone_order (optional)StringOptional Milestone Order.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringMilestone Update Successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringMilestone Update Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Milestone Update Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Milestone Update Fail."
}

Project #

Project – Add New Project #

POST yourdomain.com/api/projects

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
nameStringMandatory Project Name.
rel_typestringMandatory Project Related.Valeurs autorisées : "lead""customer""internal"
clientidNumberMandatory Related ID.
billing_typeNumberMandatory Billing Type.
start_dateDateMandatory Project Start Date.
statusNumberMandatory Project Status.
progress_from_tasks (optional)StringOptional on or off progress from tasks.
project_cost (optional)StringOptional Project Cost.
progress (optional)StringOptional project progress.
project_rate_per_hour (optional)StringOptional project rate per hour.
estimated_hours (optional)StringOptional Project estimated hours.
project_members (optional)Number[]Optional Project members.
deadline (optional)DateOptional Project deadline.
tags (optional)StringOptional Project tags.
description (optional)StringOptional Project description.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringProject add successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringProject add fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Project add successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Project add fail."
}

Project – Delete a Project #

DELETE yourdomain.com/api/delete/projects/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberproject unique ID.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringProject Delete successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringProject Delete Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Project Delete Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Project Delete Fail."
}

Project – Request project information #

GET yourdomain.com/api/projects/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberproject unique ID.

Success 200 #

json

ChampTypeDescription
ProjectObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Project – Search Project Information #

GET yourdomain.com/api/projects/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch keywords.

Success 200 #

json

ChampTypeDescription
ProjectObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Project – Update a project #

PUT yourdomain.com/api/projects/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
nameStringMandatory Project Name.
rel_typestringMandatory Project Related.Valeurs autorisées : "lead""customer""internal"
clientidNumberMandatory Related ID.
billing_typeNumberMandatory Billing Type.
start_dateDateMandatory Project Start Date.
statusNumberMandatory Project Status.
progress_from_tasks (optional)StringOptional on or off progress from tasks.
project_cost (optional)StringOptional Project Cost.
progress (optional)StringOptional project progress.
project_rate_per_hour (optional)StringOptional project rate per hour.
estimated_hours (optional)StringOptional Project estimated hours.
project_members (optional)Number[]Optional Project members.
deadline (optional)DateOptional Project deadline.
tags (optional)StringOptional Project tags.
description (optional)StringOptional Project description.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringProject Update Successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringProject Update Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Project Update Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Project Update Fail."
}

Staff #

Staff – Add New Staff #

POST yourdomain.com/api/staffs

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
firstnameStringMandatory Staff Name.
emailStringMandatory Staff Related.
passwordStringMandatory Staff password.
hourly_rate (optional)NumberOptional hourly rate.
phonenumber (optional)StringOptional Staff phonenumber.
facebook (optional)StringOptional Staff facebook.
linkedin (optional)StringOptional Staff linkedin.
skype (optional)StringOptional Staff skype.
default_language (optional)StringOptional Staff default language.
email_signature (optional)StringOptional Staff email signature.
direction (optional)StringOptional Staff direction.
send_welcome_email (optional)StringOptional Staff send welcome email.
departments (optional)Number[]Optional Staff departments.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringStaff add successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringStaff add fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Staff add successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Staff add fail."
}

Staff – Delete a Staff #

DELETE yourdomain.com/api/delete/staffs/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberStaff unique ID.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringStaff registration successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringNot register your accout.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Staff Delete."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Staff Not Delete."
}

Staff – Request Staff information #

GET yourdomain.com/api/staffs/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberStaff unique ID.

Success 200 #

json

ChampTypeDescription
StaffObjectinformation.

Error 4xx #

json

NomDescription
StaffNotFoundThe id of the Staff was not found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Staff – Search Staff Information #

GET yourdomain.com/api/staffs/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch keywords.

Success 200 #

json

ChampTypeDescription
StaffObjectinformation.

Error 4xx #

json

NomDescription
StaffNotFoundThe id of the Staff was not found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Staff – Update a Staff #

PUT yourdomain.com/api/staffs/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
firstnameStringMandatory Staff Name.
emailStringMandatory Staff Related.
passwordStringMandatory Staff password.
hourly_rate (optional)NumberOptional hourly rate.
phonenumber (optional)StringOptional Staff phonenumber.
facebook (optional)StringOptional Staff facebook.
linkedin (optional)StringOptional Staff linkedin.
skype (optional)StringOptional Staff skype.
default_language (optional)StringOptional Staff default language.
email_signature (optional)StringOptional Staff email signature.
direction (optional)StringOptional Staff direction.
departments (optional)Number[]Optional Staff departments.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringStaff Update Successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringStaff Update Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Staff Update Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Staff Update Fail."
}

Task #

Task – Add New Task #

POST yourdomain.com/api/tasks

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
nameStringMandatory Task Name.
startdateDateMandatory Task Start Date.
is_public (optional)StringOptional Task public.
billable (optional)StringOptional Task billable.
hourly_rate (optional)StringOptional Task hourly rate.
milestone (optional)StringOptional Task milestone.
duedate (optional)DateOptional Task deadline.
priority (optional)StringOptional Task priority.
repeat_every (optional)StringOptional Task repeat every.
repeat_every_custom (optional)NumberOptional Task repeat every custom.
repeat_type_custom (optional)StringOptional Task repeat type custom.
cycles (optional)NumberOptional cycles.
rel_typestringMandatory Task Related.Valeurs autorisées : "lead""customer""invoice""project""quotation""contract""annex""ticket""expense""proposal"
rel_idNumberOptional Related ID.
tags (optional)StringOptional Task tags.
description (optional)StringOptional Task description.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringTask add successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringTask add fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Task add successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Task add fail."
}

Task – Delete a Task #

DELETE yourdomain.com/api/delete/tasks/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberTask unique ID.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringTask Delete Successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringTask Delete Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Task Delete Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Task Delete Fail."
}

Task – Request Task information #

GET yourdomain.com/api/tasks/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberTask unique ID.

Success 200 #

json

ChampTypeDescription
TasksObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Task – Search Tasks Information #

GET yourdomain.com/api/tasks/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords.

Success 200 #

json

ChampTypeDescription
TasksObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Task – Update a task #

PUT yourdomain.com/api/tasks/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
nameStringMandatory Task Name.
startdateDateMandatory Task Start Date.
is_public (optional)StringOptional Task public.
billable (optional)StringOptional Task billable.
hourly_rate (optional)StringOptional Task hourly rate.
milestone (optional)StringOptional Task milestone.
duedate (optional)DateOptional Task deadline.
priority (optional)StringOptional Task priority.
repeat_every (optional)StringOptional Task repeat every.
repeat_every_custom (optional)NumberOptional Task repeat every custom.
repeat_type_custom (optional)StringOptional Task repeat type custom.
cycles (optional)NumberOptional cycles.
rel_typestringMandatory Task Related.Valeurs autorisées : "lead""customer""invoice""project""quotation""contract""annex""ticket""expense""proposal"
rel_idNumberOptional Related ID.
tags (optional)StringOptional Task tags.
description (optional)StringOptional Task description.

Success 200 #

json

ChampTypeDescription
statusStringRequest status.
messageStringTask Update Successful.

Error 4xx #

json

NomTypeDescription
statusStringRequest status.
messageStringTask Update Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Task Update Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Task Update Fail."
}

Ticket #

Ticket – Add New Ticket #

POST yourdomain.com/api/tickets

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
subjectStringMandatory Ticket name .
departmentStringMandatory Ticket Department.
contactidStringMandatory Ticket Contact.
useridStringMandatory Ticket user.
project_id (optional)StringOptional Ticket Project.
message (optional)StringOptional Ticket message.
service (optional)StringOptional Ticket Service.
assigned (optional)StringOptional Assign ticket.
cc (optional)StringOptional Ticket CC.
priority (optional)StringOptional Priority.
tags (optional)StringOptional ticket tags.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringTicket add successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringTicket add fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Ticket add successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Ticket add fail."
}

Ticket – Delete a Ticket #

DELETE yourdomain.com/api/delete/tickets/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberTicket unique ID.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringTicket Delete Successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringTicket Delete Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Ticket Delete Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Ticket Delete Fail."
}

Ticket – Request Ticket information #

GET yourdomain.com/api/tickets/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberTicket unique ID.

Success 200 #

json

ChampTypeDescription
TicketObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringThe id of the Ticket was not found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Ticket – Search Ticket Information #

GET yourdomain.com/api/tickets/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch keywords.

Success 200 #

json

ChampTypeDescription
TicketObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringThe id of the Ticket was not found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Ticket – Update a ticket #

PUT yourdomain.com/api/tickets/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
subjectStringMandatory Ticket name .
departmentStringMandatory Ticket Department.
contactidStringMandatory Ticket Contact.
useridStringMandatory Ticket user.
priorityStringMandatory Priority.
project_id (optional)StringOptional Ticket Project.
message (optional)StringOptional Ticket message.
service (optional)StringOptional Ticket Service.
assigned (optional)StringOptional Assign ticket.
tags (optional)StringOptional ticket tags.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringTicket Update Successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringTicket Update Fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Ticket Update Successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Ticket Update Fail."
}

Contracts #

Contracts – Add New Contract #

POST yourdomain.com/api/contracts

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
subjectStringMandatory. Contract subject
datestartDateMandatory. Contract start date
clientNumberMandatory. Customer ID
dateendDateOptional. Contract end date
contract_typeNumberOptional. Contract type
contract_valueNumberOptional. Contract value
descriptionStringOptional. Contract description
contentStringOptional. Contract content

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringContracts Added Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringContract add fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Contract Added Successfully"
}
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Contract ID Exists"
}

Contracts – Delete Contract #

DELETE yourdomain.com/api/contracts/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringContract Deleted Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringContract Delete Fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Contract Deleted Successfully"
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Contract Delete Fail"
}

Contracts – Request Contract information #

GET yourdomain.com/api/contracts/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberContact unique ID

Success 200 #

json

ChampTypeDescription
ContractsObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
  HTTP/1.1 200 OK
	    {
	    "id": "1",
	    "content": "",
	    "description": "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.",
	    "subject": "New Contract",
	    "client": "9",
	    "datestart": "2022-11-21",
	    "dateend": "2027-11-21",
	    "contract_type": "1",
	    "project_id": "0",
	    "addedfrom": "1",
	    "dateadded": "2022-11-21 12:45:58",
	    "isexpirynotified": "0",
	    "contract_value": "13456.00",
	    "trash": "0",
	    "not_visible_to_client": "0",
	    "hash": "31caaa36b9ea1f45a688c7e859d3ae70",
	    "signed": "0",
	    "signature": null,
	    "marked_as_signed": "0",
	    "acceptance_firstname": null,
	    "acceptance_lastname": null,
	    "acceptance_email": null,
	    "acceptance_date": null,
	    "acceptance_ip": null,
	    "short_link": null,
	    "name": "Development Contracts",
	    "userid": "9",
	    "company": "8web",
	    "vat": "",
	    "phonenumber": "",
	    "country": "0",
	    "city": "",
	    "zip": "",
	    "state": "",
	    "address": "",
	    "website": "",
	    "datecreated": "2022-08-11 14:07:26",
	    "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",
	    "type_name": "Development Contracts",
	    "attachments": [],
	    "customfields": [],
	    }

Credit Notes #

Credit_Notes – Add New Credit Notes #

POST yourdomain.com/api/credit_notes

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
clientidNumberMandatory. Customer id
dateDateMandatory. Credit Note Date
numberNumberMandatory. Credit Note Number
currencyNumberMandatory. currency field
newitemsArrayMandatory. New Items to be added
billing_streetStringOptional. Street Address
billing_city (optional)StringOptional. City Name for billing
billing_state (optional)StringOptional. Name of state for billing
billing_zip (optional)NumberOptional. Zip code
billing_country (optional)NumberOptional. Country code
shipping_street (optional)StringOptional. Address of shipping
shipping_city (optional)StringOptional. City name for shipping
shipping_state (optional)StringOptional. Name of state for shipping
shipping_zip (optional)NumberOptional. Zip code for shipping
shipping_country (optional)NumberOptional. Country code
discount_type (optional)StringOptional. before_tax / after_tax discount type
Admin (optional)StringNote] Optional. Admin Note
subtotalDecimalMandatory. calculation based on item Qty, Rate and Tax
totalDecimalMandatory. calculation based on subtotal, Discount and
clientnote (optional)StringOptional. client notes
terms (optional)StringOptional. Terms

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringCredit Note Added Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringCredit Note add fail
newitems[]StringThe Items field is required
numberStringThe Credit Note number is already in use
subtotalStringThe Sub Total field is required
totalStringThe Total field is required
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Credit Note Added Successfully"
}
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Credit Note Add Fail"
}

Credit_Notes – Delete Credit Note #

DELETE yourdomain.com/api/credit_notes/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringCredit Note Deleted Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringCredit Note Delete Fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Credit Note Deleted Successfully"
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Credit Note Delete Fail"
}

Credit_Notes – Request Credit notes information #

GET yourdomain.com/api/credit_notes/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
CreditObjectnotes information.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
    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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Credit_Notes – Search credit notes item information #

GET yourdomain.com/api/credit_notes/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords

Success 200 #

json

ChampTypeDescription
creditObjectnotes Information
  • Success-Response:
	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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Credit_Notes – Update a Credit Note #

PUT yourdomain.com/api/credit_notes

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
clientidNumberMandatory. Customer id
dateDateMandatory. Credit Note Date
numberNumberMandatory. Credit Note Number
currencyNumberMandatory. currency field
newitemsArrayMandatory. New Items to be added
itemsArrayMandatory. Existing items with Id
removed_itemsArrayOptional. Items to be removed
billing_streetStringOptional. Street Address
billing_city (optional)StringOptional. City Name for billing
billing_state (optional)StringOptional. Name of state for billing
billing_zip (optional)NumberOptional. Zip code
billing_country (optional)NumberOptional. Country code
shipping_street (optional)StringOptional. Address of shipping
shipping_city (optional)StringOptional. City name for shipping
shipping_state (optional)StringOptional. Name of state for shipping
shipping_zip (optional)NumberOptional. Zip code for shipping
shipping_country (optional)NumberOptional. Country code
discount_type (optional)StringOptional. before_tax / after_tax discount type
Admin (optional)StringNote] Optional. Admin Note
subtotalDecimalMandatory. calculation based on item Qty, Rate and Tax
totalDecimalMandatory. calculation based on subtotal, Discount and
clientnote (optional)StringOptional. client notes
terms (optional)StringOptional. Terms

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringCredit Note Updated Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringCredit Note Update Fail
newitems[]StringThe Items field is required
numberStringThe Credit Note number is already in use
subtotalStringThe Sub Total field is required
totalStringThe Total field is required
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Credit Note Updated Successfully"
}
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Credit Note Update Fail"
}

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 yourdomain.com/N/A

Paramètre #

json

ChampTypeDescription
custom_fields[customFieldType]string/arrayCustom Field Key should be same as field_name returned from Search custom field values’ information
  • Success-Response:
HTTP/1.1 200 OK
 Same as Original request
  • Error-Response:
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 yourdomain.com/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 yourdomain.com/N/A
  • Success-Response:
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>"
            }
        ]
    }
  • Error-Response:
HTTP/1.1 404 Not Found
Same as Original request

Custom_Fields – Request Values of Custom Fields #

GET yourdomain.com/api/custom_fields/:FieldBelongsto/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
FieldBelongstostringBelongs to Mandatory Field Belongs to.Valeurs autorisées :
"Company"
,
"Leads"
,
"Customers"
,
"Contacts"
,
"Staff"
,
"Contracts"
,
"Tasks"
,
"Expenses"
,
"Invoice"
,
"Items"
,
"Note"
,
"Estimate"
,
"Contract"
,
"Proposal"
,
"Projects"
,
"Tickets"
id (optional)NumberOptional unique ID.

Success 200 #

json

ChampTypeDescription
CustomObjectCustom Fields information with values.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
  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-Response:
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 yourdomain.com/N/A
  • Success-Response:
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>"
                }
            ]
        }
    ]
  • Error-Response:
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 yourdomain.com/N/A

Paramètre #

json

ChampTypeDescription
custom_fields[customFieldType]string/arrayCustom Field JSON should be same as below with field_name and custom_field_id returned from Search custom field values’ information
  • Success-Response:
HTTP/1.1 200 OK
 Same as Original request
  • Error-Response:
HTTP/1.1 404 Not Found
Same as Original request

Estimates #

Estimates – Add New Estimates #

POST yourdomain.com/api/estimates

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
clientidNumberMandatory. Customer id
numberNumberMandatory. Estimates Number
dateDateMandatory. Estimates Date
duedate (optional)DateOptional. Expiry Date of Estimates
currencyNumberMandatory. currency field
newitemsArrayMandatory. New Items to be added
subtotalDecimalMandatory. calculation based on item Qty, Rate and Tax
totalDecimalMandatory. calculation based on subtotal, Discount and Adjustment
billing_streetStringOptional. Street Address
billing_city (optional)StringOptional. City Name for billing
billing_state (optional)StringOptional. Name of state for billing
billing_zip (optional)NumberOptional. Zip code
billing_country (optional)NumberOptional. Country code
shipping_street (optional)StringOptional. Address of shipping
shipping_city (optional)StringOptional. City name for shipping
shipping_state (optional)StringOptional. Name of state for shipping
shipping_zip (optional)NumberOptional. Zip code for shipping
shipping_country (optional)NumberOptional. Country code
tags (optional)StringOptional. TAGS comma separated
status (optional)NumberOptional. Status id (default status is Accepted)
Reference (optional)StringOptional. Reference name
sale_agent (optional)NumberOptional. Sale Agent name
adminnote (optional)StringOptional. notes by admin
clientnote (optional)StringOptional. client notes
terms (optional)StringOptional. Terms

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringEstimates Added Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringEstimates add fail
newitems[]StringThe Items field is required
numberStringThe Estimates number is already in use
subtotalStringThe Sub Total field is required
totalStringThe Total field is required
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Estimates Added Successfully"
}
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Estimates Add Fail"
}

Estimates – Delete Estimate #

DELETE yourdomain.com/api/estimates/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringEstimates Deleted Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringEstimate Delete Fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Estimate Deleted Successfully"
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Estimate Delete Fail"
}

Estimates – Request Estimate information #

GET yourdomain.com/api/estimates/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberContact unique ID

Success 200 #

json

ChampTypeDescription
EstimatesObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
  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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Estimates – Search Estimate information #

GET yourdomain.com/api/estimates/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords.

Success 200 #

json

ChampTypeDescription
EstimateObjectInformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No Data Were Found"
}

Estimates – Update a estimate #

PUT yourdomain.com/api/estimates/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
clientidStringMandatory. Customer.
billing_streetStringMandatory. Street Address
billing_city (optional)StringOptional. City Name for billing
billing_state (optional)StringOptional. Name of state for billing
billing_zip (optional)NumberOptional. Zip code
billing_country (optional)NumberOptional. Country code
include_shipping (optional)booleanOptional. set yes if you want add Shipping AddressValeur par défaut : no
show_shipping_on_estimate (optional)booleanOptional. Shows shipping details in estimate.
shipping_street (optional)StringOptional. Address of shipping
shipping_city (optional)StringOptional. City name for shipping
shipping_state (optional)StringOptional. Name of state for shipping
shipping_zip (optional)NumberOptional. Zip code for shipping
shipping_country (optional)NumberOptional. Country code
numberNumberMandatory. Estimate Number
dateDateMandatory. Estimate Date
expirydate (optional)DateOptional. Expiry Date of Estimate
tags (optional)StringOptional. TAGS comma separated
currencyNumberMandatory. currency field
statusNumberMandatory. Estimate Status(eg. Draft, Sent)
reference_no (optional)StringOptional. Reference #
sale_agent (optional)NumberOptional. Sale Agent name
discount_type (optional)StringOptional. before_tax / after_tax discount type
adminnote (optional)StringOptional. notes by admin
items (optional)ArrayMandatory. Existing items with Id
removed_items (optional)ArrayOptional. Items to be removed
newitems (optional)ArrayOptional. New Items to be added
subtotalDecimalMandatory. calculation based on item Qty, Rate and Tax
totalDecimalMandatory. calculation based on subtotal, Discount and Adjustment
clientnote (optional)StringOptional. client notes
terms (optional)StringOptional. Terms

Error 4xx #

json

NomTypeDescription
numberStringThe Estimate number is already in use
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": false,
  "message": "Estimate Updated Successfully"
}
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Estimate Update Fail"
}

Expense category #

Expense_category – Request Expense category #

GET yourdomain.com/api/common/expense_category

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
ExpenseArraycategory information.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
HTTP/1.1 200 OK
{

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

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

Expenses #

Expenses – Add Expense #

POST yourdomain.com/api/expenses

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
expense_name (optional)StringOptional. Expanse Name
note (optional)StringOptional. Expanse Note
categoryNumberMandatory. Expense Category
amountDecimalMandatory. Expense Amount
dateDateMandatory. Expense Date
clientidNumberOptional. Customer id
currencyNumberMandatory. Currency Field
taxNumberOptional. Tax 1
tax2NumberOptional. Tax 2
paymentmodeNumberOptional. Payment mode
reference_no (optional)StringOptional. Reference #
recurring (optional)StringOptional. recurring 1 to 12 or custom
repeat_every_custom (optional)NumberOptional. if recurring is custom set number gap
repeat_type_custom (optional)StringOptional. if recurring is custom set gap option day/week/month/year

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringExpense Added Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringExpense Update Fail
categoryStringThe Expense Category is not found.
dateStringThe Expense date field is required.
amountStringThe Amount field is required.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Expense Added Successfully"
}
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Expense Add Fail"
}

Expenses – Delete Expense #

DELETE yourdomain.com/api/expenses/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringExpense Deleted Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringExpense Delete Fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Expense Deleted Successfully"
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Expense Delete Fail"
}

Expenses – Request Expense information #

GET yourdomain.com/api/expenses/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberExpense unique ID.

Success 200 #

json

ChampTypeDescription
ExpenseArrayExpense information.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
[
    {
        "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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Expenses – Search Expenses information #

GET yourdomain.com/api/expenses/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords

Success 200 #

json

ChampTypeDescription
ExpensesArrayExpenses Information

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status
messageStringNo data were found
  • Success-Response:
[
    {
        "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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Expenses – Update a Expense #

PUT yourdomain.com/api/expenses

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
expense_name (optional)StringOptional. Name
note (optional)StringOptional. Note
categoryNumberMandatory. Expense Category
amountDecimalMandatory. Expense Amount
dateDateMandatory. Expense Date
clientidNumberOptional. Customer id
currencyNumberMandatory. currency field
taxNumberOptional. Tax 1
tax2NumberOptional. Tax 2
paymentmodeNumberOptional. Payment mode
reference_no (optional)StringOptional. Reference #
recurring (optional)StringOptional. recurring 1 to 12 or custom
repeat_every_custom (optional)NumberOptional. if recurring is custom set number gap
repeat_type_custom (optional)StringOptional. if recurring is custom set gap option day/week/month/year

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringExpense Updated Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringExpense Update Fail
categoryStringThe Expense Category is not found.
dateStringThe Expense date field is required.
amountStringThe Amount field is required.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Expense Updated Successfully"
}
  • Error-Response:
  • Error-Response:
  • Error-Response:
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Expense Update Fail"
}

List Taxes #

List_Taxes – Request Taxes #

GET yourdomain.com/api/common/tax_data

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
TaxArrayinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
 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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Payment Mode #

Payment_Mode – Request Payment Modes #

GET yourdomain.com/api/common/payment_mode

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Success 200 #

json

ChampTypeDescription
PaymentArrayModes.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
 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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Payments #

Payments – List all Payments #

GET yourdomain.com/api/payments/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
payment_idNumberOptional payment unique ID
Note : if you don’t pass Payment id then it will list all payments records

Success 200 #

json

ChampTypeDescription
PaymentsArrayList all Payment Records.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
  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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Payments – Search Payments Information #

GET yourdomain.com/api/payments/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords

Success 200 #

json

ChampTypeDescription
PaymentsArrayPayments information

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status
messageStringNo data were found
  • Success-Response:
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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Proposals #

Proposals – Add New Proposals #

POST yourdomain.com/api/proposals

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
subjectStringMandatory. Proposal Subject Name.
RelatedstringMandatory. Proposal Related.Valeurs autorisées : "lead""customer"
rel_idNumberMandatory. Related ID.
proposal_tostringMandatory. Lead / Customer name.
dateDateMandatory. Proposal Start Date.
open_tillDateOptional. Proposal Open Till Date.
currencystringMandatory. currency id.
discount_typestringOptional. Proposal Open Till Date.
statusstringOptional. status id.
AssignedstringOptional. Assignee id.
EmailstringMandatory. Email id.
newitemsArrayMandatory. New Items to be added.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringProposal add successful.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringProposal add fail.
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Proposal add successful."
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Proposal add fail."
}

Proposals – Delete Proposal #

DELETE yourdomain.com/api/proposals/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberProposal unique ID.

Success 200 #

json

ChampTypeDescription
statusBooleanRequest status.
messageStringProposals Deleted Successfully

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringProposals Delete Fail
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": true,
  "message": "Proposals Deleted Successfully"
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Proposal Delete Fail"
}

Proposals – Request Proposal information #

GET yourdomain.com/api/proposals

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
idNumberProposal unique ID

Success 200 #

json

ChampTypeDescription
ProposalObjectinformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
  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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No data were found"
}

Proposals – Search proposals information #

GET yourdomain.com/api/proposals/search/:keysearch

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
keysearchStringSearch Keywords.

Success 200 #

json

ChampTypeDescription
ProposalsObjectInformation.

Error 4xx #

json

NomTypeDescription
statusBooleanRequest status.
messageStringNo data were found.
  • Success-Response:
 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-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "No Data Were Found"
}

Proposals – Update a proposal #

PUT yourdomain.com/api/proposal/:id

Header #

json

ChampTypeDescription
AuthorizationStringBasic Access Authentication token.

Paramètre #

json

ChampTypeDescription
subjectStringMandatory. Proposal Subject Name.
  stringProposal Related.Valeurs autorisées : "lead""customer"
rel_idNumberMandatory. Related ID.
proposal_tostringMandatory. Lead / Customer name.
dateDateMandatory. Proposal Start Date.
open_tillDateOptional. Proposal Open Till Date.
currencystringMandatory. currency id.
discount_typestringOptional. Proposal Open Till Date.
statusstringOptional. status id.
AssignedstringOptional. Assignee id.
EmailstringMandatory. Email id.
newitemsArrayMandatory. New Items to be added.
itemsArrayOptional. Existing items with Id
removed_itemsArrayOptional. Items to be removed
  • Success-Response:
HTTP/1.1 200 OK
{
  "status": false,
  "message": "Proposal Updated Successfully"
}
  • Error-Response:
HTTP/1.1 404 Not Found
{
  "status": false,
  "message": "Proposal Update Fail"
}

#