List products
GET
https://api.light.inc/v1/products
Returns a list of products
Authorization
Send one of these on every request. See Authentication for how to get credentials.
- API key
Basic authentication header of the form Basic <api_key>, where <api_key> is your api key.
- Bearer token
Query parameters
-
sortstringSort string in the format
field:direction. To provide multiple sort fields, separate them with commas.Available directions:
asc,desc.Available fields:
name,createdAt,updatedAt. -
filterstringFilter string in the format
field:operator:value. To provide multiple filters, separate them with commas.Available operators:
eq,ne,in,not_in,gt,gte,lt,lte.- For
inandnot_inoperators, provide multiple values separated by the pipe character (|).
Available fields:
id,name,pricingType,recurrence,state,invoiceReceivableId,updatedAt. - For
-
limitinteger · int32Maximum number of items to return. Default is 50, maximum is 200.
-
offsetinteger · int64deprecatedNumber of items to skip before starting to collect the result set. Deprecated, use 'cursor' instead.
-
cursorstringThe cursor position to start returning results from. To opt-in into cursor-based pagination, provide
0for the initial request. For subsequent requests, usenextCursorandprevCursorfrom the previous response to navigate. Cursor values are opaque and should not be constructed manually.
Response
-
recordsarray of objectList of records for the current page
-
idstring · uuidUnique identifier for the object
-
companyIdstring · uuidID of the company
-
namestringName of the product
-
pricingTypestringPricing type of the product
FIXED- The product has a single price per unitPACKAGE- The product is sold in packages with a fixed quantity
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
FIXEDPACKAGE -
billingRecurrencestringBilling frequency for the product. Used in contracts
ONE_TIME- The product is billed onceMONTHLY- The product is billed every monthQUARTERLY- The product is billed every three monthsHALF_YEARLY- The product is billed every six monthsYEARLY- The product is billed every year
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
ONE_TIMEMONTHLYQUARTERLYHALF_YEARLYYEARLY -
pricingsarray of objectList of product price per currency
-
currencystring -
amountinteger · int64Price in cents
-
-
statestringProduct state
ACTIVE- The product is active and can be used in invoices and contractsARCHIVED- The product is archived and cannot be used in new invoices or contracts
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
ACTIVEARCHIVED -
defaultTaxIdstring · uuidID of the default tax code for this product. Will be assigned to invoice lines when creating a line with this product
-
defaultAvataxCodestringDefault Avalara tax code. Used when the invoice tax engine is
AVATAX. Will be assigned to invoice lines when creating a line with this product -
defaultLedgerAccountIdstring · uuidID of the default ledger account for this product. Will be assigned to invoice lines when creating a line with this product
-
externalSourceobjectThe external system where this product was synced from
-
namestringThe name of the external source
CHARGEBEE- Data synced from ChargebeeHUBSPOT- Data synced from HubSpotSALESFORCE- Data synced from SalesforceSTRIPE- Data synced from Stripe
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
CHARGEBEEHUBSPOTSALESFORCESTRIPE -
externalIdstringThe ID of the object in the external source system
-
-
createdAtstring · date-timeTimestamp when the product was created
-
updatedAtstring · date-timeTimestamp when the product was last updated
-
customPropertiesarray of objectList of custom properties associated with the product
-
groupIdstring · uuidID of the custom property group
-
groupInternalNamestringInternal name of the custom property group
-
valuesarray of objectList of values. Note that this will be a single value unless the group input type supports multiple values
-
idstring · uuidUnique identifier for the object
-
groupIdstring · uuidID of the custom property group
-
groupInternalNamestringInternal name of the custom property group
-
companyIdstring · uuidID of the company
-
internalNamestringInternal name of the custom property value
-
labelstringLabel of the custom property value
-
contextstringContext/description of the custom property value
-
createdAtstring · date-timeTimestamp when the custom property value was created
-
updatedAtstring · date-timeTimestamp when the custom property value was last updated
-
-
-
-
hasMorebooleanBoolean flag indicating if there are more records available
-
totalinteger · int64deprecatedTotal number of records (only for offset pagination). This field is not guaranteed to be returned and only available for offset pagination, please do not rely on it and migrate to cursor pagination.
-
nextCursorstringCursor for fetching the next page (only for cursor pagination)
-
prevCursorstringCursor for fetching the previous page (only for cursor pagination)