REST API

Lists API

Inventory list API for stock audits, transfers, write-offs, manifests, scans, reservations, notes, exports, and list lifecycle operations.

Generated from the Celerp 2.5.0 OpenAPI schema, 21 September 2026.

GET /lists

List Inventory Lists

Return inventory lists matching the documented filters and pagination options.

Parameters

NameInRequiredTypeDescription
limitquery--integer, optionalMaximum number of records to return.
offsetquery--integerNumber of matching records to skip before returning results.
list_typequery--string, optionalInventory list type used to filter list records.
statusquery--string, optionalRecord or workflow status used to filter results or select the requested lifecycle state.
exclude_statusquery--string, optionalStatus value to exclude from the result.
date_fromquery--string, optionalStart date for the requested reporting or search period.
date_toquery--string, optionalEnd date for the requested reporting or search period.
qquery--string, optionalSearch text used to filter matching records.
all_issuedquery--booleanWhether to include all issued documents regardless of other open-state filters.
converted_to_typequery--string, optionalDocument type used to filter records that were converted to the specified target type.

Responses

StatusDescriptionBody
200Returns the requested inventory lists.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X GET http://localhost:8000/lists \
  -H "Authorization: Bearer $TOKEN"

POST /lists

Create Inventory List

Create an inventory list from the supplied request data.

Request body

FieldTypeRequiredDescription
list_typestring, optional--Celerp inventory list type, such as audit, transfer, write-off, or shipping list when supported.
ref_idstring, optional--Human-readable document or list reference number.
contact_idstring, optional--Identifier of the customer, supplier, or CRM contact associated with the record.
contact_namestring, optional--Display name of the customer, supplier, or CRM contact.
line_itemsarray of object--Line items included in the document or inventory list.
subtotalnumber--Subtotal before tax, discounts, and other document adjustments as applicable.
discountnumber--Discount amount or value applied to the document or list.
discount_typestring--Method used to interpret the list discount.
taxnumber--Tax amount for the document or list.
totalnumber--Final total amount for the document or list.
currencystring, optional--Currency code used for amounts in this record.
notesstring, optional--Optional notes associated with the record or operation.
statusstring--Always draft. Lists are created as drafts and advance through their own lifecycle actions.
share_tokenstring, optional--Public share reference associated with the list when sharing is enabled.
contact_shipping_addressstring, optional--Shipping address copied from the associated contact.
shipping_attnstring, optional--Attention or recipient line for shipping.
carrierstring, optional--Shipping carrier name.
trackingstring, optional--Shipment tracking number or reference.
incotermsstring, optional--Incoterms trade term recorded for the shipment.
package_countinteger, optional--Number of packages in the shipment.
gross_weightstring, optional--Gross shipment weight.
reason_for_exportstring, optional--Reason for export shown on shipping or customs documentation.
country_of_exportstring, optional--Country from which the goods are exported.
country_of_destinationstring, optional--Destination country for the shipment.
importerstring, optional--Importer or importer-of-record information shown on shipping documentation.
source_docsarray of string, optional--Identifiers or references of source documents represented by the list.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.

Responses

StatusDescriptionBody
200Returns the created inventory list or creation result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/audit

Create Inventory Audit

Create an inventory audit from the supplied request data.

Request body

FieldTypeRequiredDescription
location_idstringyesIdentifier of the inventory or business location.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.

Responses

StatusDescriptionBody
200Returns the created inventory audit or creation result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/audit \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

GET /lists/export/csv

Export Inventory Lists to CSV

Export inventory lists to CSV.

Parameters

NameInRequiredTypeDescription
colsquery--string, optionalComma-separated column names to export, in the order they should appear. Omit for the default columns.
list_typequery--string, optionalInventory list type used to filter list records.
statusquery--string, optionalRecord or workflow status used to filter results or select the requested lifecycle state.
exclude_statusquery--string, optionalStatus value to exclude from the result.
date_fromquery--string, optionalStart date for the requested reporting or search period.
date_toquery--string, optionalEnd date for the requested reporting or search period.
qquery--string, optionalSearch text used to filter matching records.
all_issuedquery--booleanWhether to include all issued documents regardless of other open-state filters.
converted_to_typequery--string, optionalDocument type used to filter records that were converted to the specified target type.

Responses

StatusDescriptionBody
200Returns the generated file or download response.--
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X GET http://localhost:8000/lists/export/csv \
  -H "Authorization: Bearer $TOKEN"

POST /lists/import

Import Inventory List

Import one list from a Celerp interchange record. Re-sending the same record does not create a duplicate.

Request body

FieldTypeRequiredDescription
entity_idstringyesIdentifier of the business record.
event_typestringyesBusiness event type represented by the imported record.
dataobjectyesBusiness data contained in the imported record.
sourcestringyesOrigin or source system recorded for the imported data.
idempotency_keystringyesClient-supplied idempotency key identifying this operation so the same request can be retried safely.
source_tsstring, optional--Timestamp from the source system for the imported record.

Responses

StatusDescriptionBody
200Returns the list ID and event ID. `idempotency_hit` is true when the same record was already imported.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/import \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/import/batch

Batch Import Inventory Lists

Import multiple inventory lists in one request.

Request body

FieldTypeRequiredDescription
recordsarray of DocImportRecordyesList of records included in the batch request.
upsertboolean--Whether matching imported records may update existing records.

Responses

StatusDescriptionBody
200Returns how many records were created, skipped or failed, with the reason for each failure.celerp_docs__routes__BatchImportResult
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/import/batch \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

GET /lists/numbered

Lists Numbered

The ids of the lists numbered exactly ``number``.

Parameters

NameInRequiredTypeDescription
numberqueryyesstring--

Responses

StatusDescriptionBody
200Successful Responseobject
422Validation ErrorHTTPValidationError

Example

curl -X GET http://localhost:8000/lists/numbered \
  -H "Authorization: Bearer $TOKEN"

GET /lists/summary

Get Inventory List Summary

Return inventory list summary.

Parameters

NameInRequiredTypeDescription
list_typequery--string, optionalInventory list type used to filter list records.
statusquery--string, optionalRecord or workflow status used to filter results or select the requested lifecycle state.
exclude_statusquery--string, optionalStatus value to exclude from the result.
date_fromquery--string, optionalStart date for the requested reporting or search period.
date_toquery--string, optionalEnd date for the requested reporting or search period.
qquery--string, optionalSearch text used to filter matching records.
all_issuedquery--booleanWhether to include all issued documents regardless of other open-state filters.
converted_to_typequery--string, optionalDocument type used to filter records that were converted to the specified target type.

Responses

StatusDescriptionBody
200Returns the requested inventory list summary result.object
422Validation ErrorHTTPValidationError

Example

curl -X GET http://localhost:8000/lists/summary \
  -H "Authorization: Bearer $TOKEN"

POST /lists/writeoff

Create Inventory Write-Off

Create an inventory Write-Off from the supplied request data.

Request body

FieldTypeRequiredDescription
entity_idsarray of string--Identifiers of the business records included in the operation.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.

Responses

StatusDescriptionBody
200Returns the created inventory write-off or creation result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/writeoff \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

GET /lists/{entity_id}

Get Inventory List

Return inventory list.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns the requested inventory list result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X GET http://localhost:8000/lists/:entity_id \
  -H "Authorization: Bearer $TOKEN"

PATCH /lists/{entity_id}

Update Inventory List

Update inventory list with the supplied fields.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
fields_changedobject--Fields and replacement values to apply to the existing record.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.
expected_versioninteger, optional--Version of the record the caller last read. When given, the update is rejected with 409 if the record has changed since.

Responses

StatusDescriptionBody
200Returns the updated inventory list or update result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X PATCH http://localhost:8000/lists/:entity_id \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

DELETE /lists/{entity_id}

Delete Inventory List

Delete a draft list.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns `deleted: true` once the list is removed.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X DELETE http://localhost:8000/lists/:entity_id \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/adjust

Apply Inventory Audit Adjustment

Finish an audit by setting each counted item's quantity to its count. Differences are measured against current stock and posted as shrinkage or overage.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns the lines adjusted and skipped, and the total shrinkage and overage values posted.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/adjust \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/change-type

Change Inventory List Type

Change a draft or finalized list's type. Earlier activity stays in the history.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
list_typestringyesCelerp inventory list type, such as audit, transfer, write-off, or shipping list when supported.

Responses

StatusDescriptionBody
200Returns `ok: true` and the new list type.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/change-type \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/convert

Convert Inventory List

Create a document from a list, such as an invoice from a quotation list.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
target_typestringyesTarget inventory list type for the conversion.

Responses

StatusDescriptionBody
200Returns the event ID and the ID of the new document.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/convert \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/duplicate

Duplicate Inventory List

Copy a list into a new draft.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns the event ID and the ID of the new list.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/duplicate \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/finalize

Finalize Inventory List

Finalize a draft list. For an audit, each line's on-hand quantity is recorded at this point.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns the event ID and the list's new status.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/finalize \
  -H "Authorization: Bearer $TOKEN"

PATCH /lists/{entity_id}/line-page

Update Inventory List Page

Update inventory list page with the supplied fields.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
line_itemsarray of object--Line items included in the document or inventory list.
offsetinteger--Starting line offset for the paged list update.
original_countinteger, optional--Original number of list lines used to validate the paged update.
expected_versioninteger, optional--Record version the caller expects when applying the update.

Responses

StatusDescriptionBody
200Returns the updated inventory list page or update result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X PATCH http://localhost:8000/lists/:entity_id/line-page \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

PATCH /lists/{entity_id}/line/{item_id}

Set Inventory Audit Count

Set the physical count for an inventory audit line while the audit is in its counting stage.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.
item_idpathyesstringIdentifier of the inventory item.

Request body

FieldTypeRequiredDescription
counted_qtynumber, optional--Physical quantity counted during an inventory audit.

Responses

StatusDescriptionBody
200Returns the updated inventory audit count or update result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X PATCH http://localhost:8000/lists/:entity_id/line/:item_id \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/move

Execute Inventory Transfer

Move every item on a finalized transfer list to one location. It can be run again, since the list stays finalized.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
to_location_idstringyesIdentifier of the destination inventory location.

Responses

StatusDescriptionBody
200Returns the number of items moved and the destination location ID.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/move \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

GET /lists/{entity_id}/notes

List Inventory List Notes

Return inventory list notes matching the documented filters and pagination options.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns the requested inventory list notes.array of object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X GET http://localhost:8000/lists/:entity_id/notes \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/notes

Add Inventory List Note

Add a note to a list.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
notestringyesNote text to add or update.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.

Responses

StatusDescriptionBody
200Returns the event ID and the new note ID.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/notes \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

PATCH /lists/{entity_id}/notes/{note_id}

Update Inventory List Note

Update inventory list note with the supplied fields.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.
note_idpathyesstringIdentifier of the note.

Request body

FieldTypeRequiredDescription
notestringyesNote text to add or update.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.

Responses

StatusDescriptionBody
200Returns the updated inventory list note or update result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X PATCH http://localhost:8000/lists/:entity_id/notes/:note_id \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

DELETE /lists/{entity_id}/notes/{note_id}

Delete Inventory List Note

Delete a note from a list.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.
note_idpathyesstringIdentifier of the note.

Responses

StatusDescriptionBody
200Returns the ID of the recorded event.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X DELETE http://localhost:8000/lists/:entity_id/notes/:note_id \
  -H "Authorization: Bearer $TOKEN"

GET /lists/{entity_id}/page

Get Paged Inventory List

Return paged inventory list.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.
offsetquery--stringNumber of matching records to skip before returning results.
limitquery--stringMaximum number of records to return.

Responses

StatusDescriptionBody
200Returns the requested paged inventory list result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X GET http://localhost:8000/lists/:entity_id/page \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/reprice

Reprice List

Update the price of every catalog item line on a draft list from a price list, in one step. If any line cannot be repriced, nothing changes.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
price_liststringyesPrice List
expected_versionintegeryesExpected Version

Responses

StatusDescriptionBody
200Returns the event ID, the new version, the lines repriced and skipped, and the price list used.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/reprice \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/reserve-lines

Reserve Inventory List Lines

Reserve or release selected inventory list lines without posting an accounting entry.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
line_entity_idsarray of stringyesIdentifiers of the document or list lines included in the operation.
new_statusstringyesReservation state to assign to the selected document or list lines.

Responses

StatusDescriptionBody
200Returns the updated reservation state of each selected line.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/reserve-lines \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/revert-to-draft

Revert Inventory List to Draft

Return a finalized list to draft. Not possible once a final action, such as an audit adjustment, has run.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
reasonstring, optional--Human-readable reason for the lifecycle change, cancellation, void, or other operation.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.

Responses

StatusDescriptionBody
200Returns the ID of the recorded event.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/revert-to-draft \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/scan

Scan Item into Inventory List

Scan a barcode or code into a list. What happens depends on the list type and status: in a draft it adds a line, in a finalized audit it counts the item.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
barcodestringyesBarcode value assigned to or scanned for the inventory item.
price_liststring, optional--Price list to apply while scanning or pricing list items.
run_keystring, optional--Client operation key identifying the scan run.

Responses

StatusDescriptionBody
200Returns the lines scanned, the result for each code, any codes that failed, and any duplicates.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/scan \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/send

Send Inventory List

Mark a finalized list as sent, and email it when a recipient is given.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
sent_viastring, optional--Delivery channel used to send the document or list.
sent_tostring, optional--Primary recipient address or destination.
ccstring, optional--Carbon-copy recipients for the outbound message.
bccstring, optional--Blind-carbon-copy recipients for the outbound message.
subjectstring, optional--Subject line for the outbound message.
messagestring, optional--Message body sent with the document or list.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.

Responses

StatusDescriptionBody
200Returns `ok: true` when the change is saved.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/send \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/set-scanned

Mark Inventory List Lines Scanned

Mark audit lines as scanned or clear the mark. Pass item IDs to target specific lines, or none for all lines.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
item_idsarray of string--Identifiers of the inventory items included in the operation.
scannedboolean--Whether the selected audit lines should be marked scanned or accounted for.

Responses

StatusDescriptionBody
200Returns the number of lines changed.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/set-scanned \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/undo-adjust

Undo Inventory Audit Adjustment

Reverse the most recent inventory audit adjustment, restore the prior stock quantities, and reopen the audit for further counting or adjustment.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns `ok: true` when the change is saved.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/undo-adjust \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/undo-write-off

Undo Inventory Write-Off

Reverse a write-off. Its journal entry is voided and each written-off lot is available again.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns the result of the undo inventory write-off operation.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/undo-write-off \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/unmark-sent

Clear Inventory List Sent Status

Clear the sent milestone (the list stays finalized).

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns `ok: true` when the change is saved.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/unmark-sent \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/void

Void Inventory List

Void a list. It stays on record.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
reasonstring, optional--Human-readable reason for the lifecycle change, cancellation, void, or other operation.
idempotency_keystring, optional--Client-supplied idempotency key identifying this operation so the same request can be retried safely.

Responses

StatusDescriptionBody
200Returns the ID of the recorded event.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/void \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

POST /lists/{entity_id}/write-off

Write Off Inventory Stock

Write off the stock on a list in one step: each line's quantity leaves stock and one balanced journal entry is posted. If any line cannot be written off, nothing is.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Responses

StatusDescriptionBody
200Returns the lines written off, the lines skipped, and the total value written off.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/write-off \
  -H "Authorization: Bearer $TOKEN"

POST /lists/{entity_id}/writeoff-line

Update Inventory Write-Off Line

Update inventory Write-Off line with the supplied fields.

Parameters

NameInRequiredTypeDescription
entity_idpathyesstringIdentifier of the requested Celerp record.

Request body

FieldTypeRequiredDescription
line_idstring, optional--Identifier of the list or document line.
item_idstring, optional--Identifier of the inventory item.
qty_outnumber, optional--Quantity to remove from inventory on the write-off line.
accountstring, optional--Accounting account used for the write-off line.
commentstring, optional--Optional comment recorded with the line.

Responses

StatusDescriptionBody
200Returns the updated inventory write-off line or update result.object
422The request failed validation. The response lists each invalid field and why.HTTPValidationError

Example

curl -X POST http://localhost:8000/lists/:entity_id/writeoff-line \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'