API reference
193 endpoints across 31 resources.
Base URL https://api.light.inc.
Authorization
The OAuth 2.0 authorization flow: start it, and exchange the code for an access token.
Accounting Documents
List and query every accounting document, across all document types.
Accounting Release Templates
Create and manage the templates that generate accounting releases, and archive the ones no longer in use.
-
POST
Archive accounting release template
/v1/accounting-release-templates/{templateId}/archive -
GET
List accounting release templates
/v1/accounting-release-templates -
POST
Create accounting release template
/v1/accounting-release-templates -
GET
Get accounting release template
/v1/accounting-release-templates/{templateId} -
PATCH
Update accounting release template
/v1/accounting-release-templates/{templateId}
Attachments
Upload, list and manage the documents attached to a record.
-
GET
List attachments
/v1/attachments -
POST
Create attachment
/v1/attachments -
POST
Generate attachment upload URL
/v1/attachments/upload-url -
DELETE
Delete attachment
/v1/attachments/{attachmentId} -
GET
Get attachment document
/v1/attachments/{attachmentId}/document -
Get attachment options
/v1/attachments/{attachmentId}/document
Bank Accounts
Create and access bank accounts. Creating one also creates its linked ledger account atomically.
-
GET
Get bank accounts of the company
/v1/bank-accounts -
POST
Create bank account
/v1/bank-accounts -
GET
List bank transactions
/v1/bank-accounts/{bankAccountId}/bank-transactions -
POST
Create bank transactions
/v1/bank-accounts/{bankAccountId}/bank-transactions -
GET
Get bank account balance
/v1/bank-accounts/{bankAccountId}/balance -
PUT
Upsert bank account balance
/v1/bank-accounts/{bankAccountId}/balance -
GET
Get bank transaction
/v1/bank-accounts/{bankAccountId}/bank-transactions/{bankTransactionId}
Invoice Payables
Create, approve, decline and mark as paid — bills and their line items, end to end.
-
GET
List invoice payables
/v1/bff/invoice-payables -
POST
Approve invoice payable
/v1/invoice-payables/{invoicePayableId}/approve -
POST
Cancel invoice payable
/v1/invoice-payables/{invoicePayableId}/cancel -
POST
Create invoice payable
/v1/invoice-payables -
POST
Generate document upload URL
/v1/invoice-payables/{invoicePayableId}/document/upload-url -
POST
Create invoice payable line item
/v1/invoice-payables/{invoicePayableId}/line-items -
POST
Decline invoice payable
/v1/invoice-payables/{invoicePayableId}/decline -
GET
Get invoice payable line item
/v1/invoice-payables/{invoicePayableId}/line-items/{lineItemId} -
PUT
Update invoice payable line item
/v1/invoice-payables/{invoicePayableId}/line-items/{lineItemId} -
DELETE
Delete invoice payable line item
/v1/invoice-payables/{invoicePayableId}/line-items/{lineItemId} -
GET
Get invoice payable
/v1/invoice-payables/{invoicePayableId} -
PATCH
Update invoice payable
/v1/invoice-payables/{invoicePayableId} -
GET
Get invoice document
/v1/invoice-payables/{invoicePayableId}/document -
GET
Get linked credit notes
/v1/invoice-payables/{invoicePayableId}/credit-notes -
GET
List invoice payable payments
/v1/invoice-payables/{invoicePayableId}/payments -
POST
Mark invoice payable as paid
/v1/invoice-payables/{invoicePayableId}/mark-as-paid -
POST
Post invoice payable without approval
/v1/invoice-payables/{invoicePayableId}/post -
POST
Reverse invoice payable payment
/v1/invoice-payables/{invoicePayableId}/reverse-clearing -
POST
Submit for approval
/v1/invoice-payables/{invoicePayableId}/submit-for-approval -
PATCH
Update the custom properties of a posted invoice payable
/v1/invoice-payables/{invoicePayableId}/custom-properties
Card Balance Accounts
Access card balance accounts, their statements and total spend.
-
GET
Generate a card balance account statement
/v1/card-balance-accounts/{accountId}/statement -
GET
Get card balance account
/v1/card-balance-accounts/{accountId} -
GET
List card balance accounts
/v1/card-balance-accounts -
GET
Get total spend for a card balance account
/v1/card-balance-accounts/{accountId}/total-spend
Card Customers
Retrieve the card integration public key.
Card Transactions
List, post and update card transactions and their receipts.
-
PATCH
Batch update card transactions
/v1/card-transactions/batch-update -
POST
Generate receipt upload URL
/v1/card-transactions/{cardTransactionId}/receipt-upload-url -
GET
Get card transaction
/v1/card-transactions/{cardTransactionId} -
GET
Get transaction receipt
/v1/card-transactions/{transactionId}/receipt -
DELETE
Remove transaction receipt
/v1/card-transactions/{transactionId}/receipt -
OPTIONS /v1/card-transactions/{transactionId}/receipt
/v1/card-transactions/{transactionId}/receipt -
GET
List card transactions
/v1/card-transactions -
POST
Post card transaction
/v1/card-transactions/{transactionId}/post -
POST
Reset card transaction
/v1/card-transactions/{transactionId}/reset -
PATCH
Update card transaction
/v1/card-transactions/{transactionId} -
PATCH
Update card transaction line
/v1/card-transactions/{transactionId}/lines/{transactionLineId}
Cards
Create, freeze, unfreeze and manage corporate cards.
Entities
List the company's legal entities.
Companies
Access company configuration, such as currency settings.
Contracts
Create, publish, renew, terminate and manage contracts.
-
POST
Cancel scheduled termination
/v1/contracts/{contractId}/cancel-termination -
GET
List contracts
/v1/contracts -
POST
Create contract
/v1/contracts -
POST
Create contract line
/v1/contracts/{contractId}/lines -
GET
Get contract
/v1/contracts/{contractId} -
DELETE
Delete contract
/v1/contracts/{contractId} -
PATCH
Update contract
/v1/contracts/{contractId} -
DELETE
Delete contract line
/v1/contracts/{contractId}/lines/{lineId} -
PATCH
Update contract line
/v1/contracts/{contractId}/lines/{lineId} -
POST
Generate document upload URL
/v1/contracts/{contractId}/generate-document-upload-url -
POST
Publish contract
/v1/contracts/{contractId}/publish -
POST
Renew contract
/v1/contracts/{contractId}/renew -
POST
Reset contract
/v1/contracts/{contractId}/reset -
POST
Terminate contract
/v1/contracts/{contractId}/terminate
Credit Notes
Create and list credit notes, and link them to invoice payables.
-
POST
Archive credit note
/v1/credit-notes/{creditNoteId}/archive -
GET
List credit notes
/v1/credit-notes -
POST
Create credit note
/v1/credit-notes -
POST
Create credit note line
/v1/credit-notes/{creditNoteId}/lines -
POST
Create credit note from invoice payable
/v1/credit-notes/create-from-invoice-payable/{invoicePayableId} -
DELETE
Delete credit note line
/v1/credit-notes/{creditNoteId}/lines/{lineId} -
PATCH
Update credit note line
/v1/credit-notes/{creditNoteId}/lines/{lineId} -
GET
Get credit note
/v1/credit-notes/{creditNoteId} -
PATCH
Update credit note
/v1/credit-notes/{creditNoteId} -
GET
Get credit note document
/v1/credit-notes/{creditNoteId}/document -
GET
Get linked invoice payables
/v1/credit-notes/{creditNoteId}/invoice-payables -
POST
Link credit note to invoice payable
/v1/credit-notes/{creditNoteId}/invoice-payables/{invoicePayableId} -
DELETE
Unlink credit note from invoice payable
/v1/credit-notes/{creditNoteId}/invoice-payables/{invoicePayableId} -
PATCH
Update clearing amount
/v1/credit-notes/{creditNoteId}/invoice-payables/{invoicePayableId} -
POST
Post credit note
/v1/credit-notes/{creditNoteId}/post
Custom Properties
Access custom property groups.
-
GET
List custom property values
/v1/custom-properties/groups/{groupId}/values -
POST
Create custom property value
/v1/custom-properties/groups/{groupId}/values -
GET
Get custom property value
/v1/custom-properties/groups/{groupId}/values/{valueId} -
DELETE
Delete custom property value
/v1/custom-properties/groups/{groupId}/values/{valueId} -
PATCH
Update custom property value
/v1/custom-properties/groups/{groupId}/values/{valueId} -
GET
Get custom property group
/v1/custom-properties/groups/{groupId} -
GET
List custom property groups
/v1/custom-properties/groups
Customer Credits
Manage customer credit documents.
-
POST
Archive customer credit
/v1/customer-credits/{customerCreditId}/archive -
GET
List customer credits
/v1/customer-credits -
POST
Create customer credit
/v1/customer-credits -
POST
Create customer credit line
/v1/customer-credits/{customerCreditId}/lines -
DELETE
Delete customer credit line
/v1/customer-credits/{customerCreditId}/lines/{lineId} -
PATCH
Update customer credit line
/v1/customer-credits/{customerCreditId}/lines/{lineId} -
GET
Get customer credit
/v1/customer-credits/{customerCreditId} -
PATCH
Update customer credit
/v1/customer-credits/{customerCreditId} -
POST
Link customer credit to invoice
/v1/customer-credits/{customerCreditId}/invoice-receivables/{invoiceReceivableId}/link -
POST
Link customer credit
/v1/customer-credits/{customerCreditId}/invoice-receivables/{invoiceReceivableId} -
DELETE
Unlink customer credit
/v1/customer-credits/{customerCreditId}/invoice-receivables/{invoiceReceivableId} -
POST
Post and send customer credit
/v1/customer-credits/{customerCreditId}/post-and-send-email -
POST
Post customer credit
/v1/customer-credits/{customerCreditId}/post -
POST
Submit e-invoice for customer credit
/v1/customer-credits/{customerCreditId}/submit-einvoice -
POST
Unarchive customer credit
/v1/customer-credits/{customerCreditId}/unarchive -
POST
Unlink customer credit from invoice
/v1/customer-credits/{customerCreditId}/invoice-receivables/{invoiceReceivableId}/unlink
Customers
Customers are entities that purchase goods or services from a company. They can be used on invoices and contracts.
Exchange
Retrieve currency exchange rates.
Expenses
List expenses and submit reimbursements.
-
POST
Cancel expense
/v1/expenses/{expenseId}/cancel -
GET
List expenses
/v1/expenses -
POST
Create expense
/v1/expenses -
POST
Create line item
/v1/expenses/{expenseId}/line-items -
DELETE
Delete line item
/v1/expenses/{expenseId}/line-items/{lineItemId} -
PATCH
Update line item
/v1/expenses/{expenseId}/line-items/{lineItemId} -
POST
Create upload URL
/v1/expenses/upload-url -
GET
Get expense
/v1/expenses/{expenseId} -
PATCH
Update expense
/v1/expenses/{expenseId} -
GET
Get expense document
/v1/expenses/{expenseId}/document -
POST
Submit reimbursement
/v1/expenses/submit
General Ledger Summary
Read the general ledger summary.
Invoice Approvals
Retrieve the approval status of an invoice.
Invoice Receivables
Invoice receivables represent a sale transaction between the company and a customer. Create, update, open, reset and send them.
-
POST
Archive invoice
/v1/invoice-receivables/{invoiceReceivableId}/archive -
GET
List invoices
/v1/invoice-receivables -
POST
Create invoice
/v1/invoice-receivables -
POST
Create line
/v1/invoice-receivables/{invoiceReceivableId}/lines -
DELETE
Delete invoice line
/v1/invoice-receivables/{invoiceReceivableId}/lines/{lineId} -
PATCH
Update invoice line
/v1/invoice-receivables/{invoiceReceivableId}/lines/{lineId} -
POST
Generate invoice PDF
/v1/invoice-receivables/{invoiceReceivableId}/document -
GET
Get invoice
/v1/invoice-receivables/{invoiceReceivableId} -
PATCH
Update invoice
/v1/invoice-receivables/{invoiceReceivableId} -
GET
List invoice payments
/v1/invoice-receivables/{invoiceReceivableId}/payments -
POST
Enter invoice payment
/v1/invoice-receivables/{invoiceReceivableId}/payments -
POST
Open invoice
/v1/invoice-receivables/{invoiceReceivableId}/open -
POST
Reset invoice
/v1/invoice-receivables/{invoiceReceivableId}/reset -
POST
Reverse invoice payment
/v1/invoice-receivables/{invoiceReceivableId}/reverse-clearing -
POST
Send invoice email
/v1/invoice-receivables/{invoiceReceivableId}/send-email -
POST
Unarchive invoice
/v1/invoice-receivables/{invoiceReceivableId}/unarchive
Journal Entries
Create journal entries programmatically.
Ledger accounts
List the chart of accounts.
Ledger Transactions
Query ledger transaction lines.
Products
Products are goods or services that a company offers to its customers. They can be used on invoices and contracts.
Purchase Orders
Create, close, cancel and manage purchase orders and their lines.
-
PUT
Batch update purchase order lines
/v1/purchase-orders/{purchaseOrderId}/lines/bulk -
POST
Bulk create purchase order lines
/v1/purchase-orders/{purchaseOrderId}/lines/bulk -
POST
Cancel purchase order
/v1/purchase-orders/{purchaseOrderId}/cancel -
POST
Close purchase order
/v1/purchase-orders/{purchaseOrderId}/close -
GET
List purchase orders
/v1/purchase-orders -
POST
Create purchase order
/v1/purchase-orders -
POST
Create purchase order line
/v1/purchase-orders/{purchaseOrderId}/lines -
GET
Get purchase order
/v1/purchase-orders/{purchaseOrderId} -
PATCH
Update purchase order
/v1/purchase-orders/{purchaseOrderId} -
POST
Lock purchase order
/v1/purchase-orders/{purchaseOrderId}/lock -
DELETE
Delete purchase order line
/v1/purchase-orders/{purchaseOrderId}/lines/{lineId} -
PATCH
Update purchase order line
/v1/purchase-orders/{purchaseOrderId}/lines/{lineId} -
POST
Reset purchase order
/v1/purchase-orders/{purchaseOrderId}/reset
Reimbursement categories
List the reimbursement categories that decide the GL account and tax code on a reimbursement.
User Comments
Create, list and manage comments on records.
Users
List users and manage their reimbursement configuration.
-
GET
List users
/v1/users -
POST
Create user
/v1/users -
GET
Get latest reimbursement
/v1/users/{userId}/reimbursements/latest -
GET
Get reimbursement config
/v1/users/{userId}/reimbursement-config -
PUT
Update reimbursement config
/v1/users/{userId}/reimbursement-config -
PATCH
Update user
/v1/users/{userId} -
PUT
Update user managers
/v1/users/{userId}/managers -
PUT
Update user status
/v1/users/{userId}/status
Vendors
Create, list, update and manage vendors.