products

Bulk product actions

Changed on

POST /api/v1/products/bulk

Archive / Restore / Delete / Set tax id in bulk

post/api/v1/products/bulk

Request

Query parameters

indexstring
Example:user

Replaces the default response index from data to a user specific string

ie.

  ?index=new_index

response is wrapped

  {
    'new_index' : [
      .....  
    ]
  }

Headers

X-API-TOKENstring required
Example:TOKEN

The API token to be used for authentication

X-Requested-Withstring required
Example:XMLHttpRequest

Used to send the XMLHttpRequest header

Request body

actionstring required

The action to perform ie. archive / restore / delete / set_tax_id

idsstring[] required
tax_idstring

The tax rate id to set on the list of products

The following constants are available (default = '1')

PRODUCT_TYPE_PHYSICAL = '1'
PRODUCT_TYPE_SERVICE = '2'
PRODUCT_TYPE_DIGITAL = '3'
PRODUCT_TYPE_SHIPPING = '4'
PRODUCT_TYPE_EXEMPT = '5'
PRODUCT_TYPE_REDUCED_TAX = '6'
PRODUCT_TYPE_OVERRIDE_TAX = '7'
PRODUCT_TYPE_ZERO_RATED = '8'
PRODUCT_TYPE_REVERSE_TAX = '9'

Example request

{
  "action": "archive",
  "ids": [
    "2J234DFA,D2J234DFA,D2J234DFA"
  ],
  "tax_id": "1"
}

Response

The Product response

idstring

The hashed product ID.

user_idstring

The hashed ID of the user that created this product.

assigned_user_idstring

The hashed ID of the user assigned to this product.

project_idstring

The hashed ID of the project that this product is associated with.

vendor_idstring

The hashed ID of the vendor that this product is associated with.

custom_value1string

Custom value field 1.

custom_value2string

Custom value field 2.

custom_value3string

Custom value field 3.

custom_value4string

Custom value field 4.

product_keystring

The product key.

notesstring

Notes about the product.

costnumber double

The cost of the product. (Your purchase price for this product)

pricenumber double

The price of the product that you are charging.

quantitynumber double

The quantity of the product. (used as a default)

tax_name1string

The name of tax 1.

tax_rate1number double

The rate of tax 1.

tax_name2string

The name of tax 2.

tax_rate2number double

The rate of tax 2.

tax_name3string

The name of tax 3.

tax_rate3number double

The rate of tax 3.

archived_atinteger

The timestamp when the product was archived.

created_atinteger

The timestamp when the product was created.

updated_atinteger

Timestamp

is_deletedboolean

Boolean flag determining if the product has been deleted

in_stock_quantityinteger

The quantity of the product that is currently in stock

stock_notificationboolean

Indicates whether stock notifications are enabled for this product

stock_notification_thresholdinteger

The minimum quantity threshold for which stock notifications will be triggered

max_quantityinteger

The maximum quantity that can be ordered for this product

product_imagestring uri-reference

The URL of the product image

tax_idstring

The tax category id for this product.'

The following constants are available (default = '1')

PRODUCT_TYPE_PHYSICAL = '1'
PRODUCT_TYPE_SERVICE = '2'
PRODUCT_TYPE_DIGITAL = '3'
PRODUCT_TYPE_SHIPPING = '4'
PRODUCT_TYPE_EXEMPT = '5'
PRODUCT_TYPE_REDUCED_TAX = '6'
PRODUCT_TYPE_OVERRIDE_TAX = '7'
PRODUCT_TYPE_ZERO_RATED = '8'
PRODUCT_TYPE_REVERSE_TAX = '9'
income_account_idstring

The accounting income account identifier this product maps to (used by external accounting integrations such as QuickBooks).

Example response

{
  "id": "eP01N",
  "user_id": "n30m4",
  "assigned_user_id": "pR0j3",
  "project_id": "pR0j3",
  "vendor_id": "pR0j3",
  "custom_value1": "Custom value 1",
  "custom_value2": "Custom value 2",
  "custom_value3": "Custom value 3",
  "custom_value4": "Custom value 4",
  "product_key": "1234",
  "notes": "These are some notes about the product.",
  "cost": 10,
  "price": 20,
  "quantity": 5,
  "tax_name1": "Tax 1",
  "tax_rate1": 10,
  "tax_name2": "Tax 2",
  "tax_rate2": 5,
  "tax_name3": "Tax 3",
  "archived_at": 1647604800,
  "created_at": 1647604800,
  "updated_at": 1647691496,
  "tax_id": "1",
  "income_account_id": "42"
}

Changes

    • info

      added the optional property to the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status