Skip to content

Revision ​

Stock revisions (inventory counts)

INFO

Har bir javob umumiy konvertda qaytadi — code, message, messages, status_code, time — foydali yuk esa data ichida. Quyidagi jadvallar faqat data ichini tavsiflaydi.

POST /revision/create ​

Create a new products revision (stock inventory count). type is forced to products. created_by is set from the integration principal.

So‘rov tanasi

MaydonTurMajburiyTavsif
organization_idstringHaOrganization ObjectId the revision belongs to
warehouse_idstringYo‘qWarehouse ObjectId to count stock in (optional — defaults to org's primary warehouse)
responsible_idstringYo‘qEmployee ObjectId responsible for this revision (optional — defaults to the integration principal)
starting_datestring (date-time)HaDate and time the revision counting period starts (ISO 8601)
ending_datestring (date-time)Yo‘qOptional date and time the counting period ends (ISO 8601)
descriptionstringYo‘qOptional free-text description or notes
set_countedbooleanYo‘qWhen true, pre-populates counted quantities from current stock levels
category_idsstring[]Yo‘qFilter products by category ObjectIds (optional)
supplier_idsstring[]Yo‘qFilter products by supplier ObjectIds (optional)
additional_idsstring[]Yo‘qAdditional product ObjectIds to include (optional)
removed_idsstring[]Yo‘qProduct ObjectIds to exclude from the revision (optional)
attachmentsobject[]Yo‘qFile attachments (optional)
json
{
  "organization_id": "string",
  "warehouse_id": "string",
  "responsible_id": "string",
  "starting_date": "2025-05-01T12:00:00Z",
  "ending_date": "2025-05-01T12:00:00Z",
  "description": "string",
  "set_counted": false,
  "category_ids": [
    "string"
  ],
  "supplier_ids": [
    "string"
  ],
  "additional_ids": [
    "string"
  ],
  "removed_ids": [
    "string"
  ],
  "attachments": [
    {}
  ]
}

Javob

MaydonTurTavsif
_idstring
statestringMumkin qiymatlar: pending, in_progress, canceled, done
numberstring
starting_datestring (date-time)
ending_datestring (date-time)
descriptionstring
organization_idstring
organizationobject
organization._idstring
organization.namestring
warehouse_idstring
warehouseobject
warehouse._idstring
warehouse.namestring
responsible_idstring
responsibleobject
responsible._idstring
responsible.full_namestring
responsible.phone_numberstring
currencyobject
total_expectednumber
total_countednumber
total_profitnumber
total_lossnumber
differencenumber
profit_listobject[]
profit_list[].currency_idstring
profit_list[].amountnumber
loss_listobject[]
loss_list[].currency_idstring
loss_list[].amountnumber
attachmentsobject[]
created_atstring (date-time)
updated_atstring (date-time)
json
{
  "code": 0,
  "message": "Success",
  "status_code": 200,
  "data": {
    "_id": "string",
    "state": "pending",
    "number": "string",
    "starting_date": "2025-05-01T12:00:00Z",
    "ending_date": "2025-05-01T12:00:00Z",
    "description": "string",
    "organization_id": "string",
    "organization": {
      "_id": "string",
      "name": "string"
    },
    "warehouse_id": "string",
    "warehouse": {
      "_id": "string",
      "name": "string"
    },
    "responsible_id": "string",
    "responsible": {
      "_id": "string",
      "full_name": "string",
      "phone_number": "string"
    },
    "currency": {},
    "total_expected": 0,
    "total_counted": 0,
    "total_profit": 0,
    "total_loss": 0,
    "difference": 0,
    "profit_list": [
      {
        "currency_id": "string",
        "amount": 0
      }
    ],
    "loss_list": [
      {
        "currency_id": "string",
        "amount": 0
      }
    ],
    "attachments": [
      {}
    ],
    "created_at": "2025-05-01T12:00:00Z",
    "updated_at": "2025-05-01T12:00:00Z"
  },
  "time": "2025-05-01T12:00:00Z"
}

GET /revision/get-by-id/{id} ​

Fetch a single revision by ObjectId. Returns full detail including responsible, organization, warehouse, totals, profit_list, loss_list.

Yo‘l parametrlari

ParametrTurMajburiyTavsif
idstringHaRevision ObjectId

So‘rov tanasi

So‘rov tanasi talab qilinmaydi.

Javob

Javob tuzilishi quyidagi bilan bir xil: POST /revision/create.

POST /revision/get-paging ​

Paginated list of product revisions (type is forced to products). Filterable by organization, warehouse, responsible, and state.

So‘rov tanasi

MaydonTurMajburiyTavsif
pagenumberHaStandart: 1
limitnumberHaStandart: 20
organization_idstringYo‘qFilter by organization ObjectId
warehouse_idstringYo‘qFilter by warehouse ObjectId
responsible_idstringYo‘qFilter by responsible employee ObjectId
statestringYo‘qFilter by revision state. Mumkin qiymatlar: pending, in_progress, canceled, done
json
{
  "page": 1,
  "limit": 20,
  "organization_id": "string",
  "warehouse_id": "string",
  "responsible_id": "string",
  "state": "pending"
}

Javob

MaydonTurTavsif
totalnumber
listobject[]
list[]._idstring
list[].statestringMumkin qiymatlar: pending, in_progress, canceled, done
list[].numberstring
list[].starting_datestring (date-time)
list[].ending_datestring (date-time)
list[].descriptionstring
list[].organization_idstring
list[].organizationobject
list[].organization._idstring
list[].organization.namestring
list[].warehouse_idstring
list[].warehouseobject
list[].warehouse._idstring
list[].warehouse.namestring
list[].responsibleobject
list[].responsible._idstring
list[].responsible.full_namestring
list[].responsible.phone_numberstring
list[].total_expectednumber
list[].total_countednumber
list[].total_profitnumber
list[].total_lossnumber
list[].total_differencenumber
list[].created_atstring (date-time)
list[].updated_atstring (date-time)
json
{
  "code": 0,
  "message": "Success",
  "status_code": 200,
  "data": {
    "total": 0,
    "list": [
      {
        "_id": "string",
        "state": "pending",
        "number": "string",
        "starting_date": "2025-05-01T12:00:00Z",
        "ending_date": "2025-05-01T12:00:00Z",
        "description": "string",
        "organization_id": "string",
        "organization": {
          "_id": null,
          "name": null
        },
        "warehouse_id": "string",
        "warehouse": {
          "_id": null,
          "name": null
        },
        "responsible": {
          "_id": null,
          "full_name": null,
          "phone_number": null
        },
        "total_expected": 0,
        "total_counted": 0,
        "total_profit": 0,
        "total_loss": 0,
        "total_difference": 0,
        "created_at": "2025-05-01T12:00:00Z",
        "updated_at": "2025-05-01T12:00:00Z"
      }
    ]
  },
  "time": "2025-05-01T12:00:00Z"
}

PUT /revision/update/{id} ​

Update an existing revision. Only allowed while state is pending; returns AlreadyInProgress otherwise.

Yo‘l parametrlari

ParametrTurMajburiyTavsif
idstringHaRevision ObjectId to update

So‘rov tanasi

MaydonTurMajburiyTavsif
organization_idstringYo‘qOrganization ObjectId
warehouse_idstringYo‘qWarehouse ObjectId
responsible_idstringYo‘qEmployee ObjectId responsible for this revision
starting_datestring (date-time)Yo‘qDate and time the revision counting period starts (ISO 8601)
ending_datestring (date-time)Yo‘qDate and time the counting period ends (ISO 8601)
descriptionstringYo‘qFree-text description or notes
set_countedbooleanYo‘qRe-populate counted quantities from current stock levels
category_idsstring[]Yo‘qFilter products by category ObjectIds
supplier_idsstring[]Yo‘qFilter products by supplier ObjectIds
additional_idsstring[]Yo‘qAdditional product ObjectIds to include
removed_idsstring[]Yo‘qProduct ObjectIds to exclude
attachmentsobject[]Yo‘qFile attachments
json
{
  "organization_id": "string",
  "warehouse_id": "string",
  "responsible_id": "string",
  "starting_date": "2025-05-01T12:00:00Z",
  "ending_date": "2025-05-01T12:00:00Z",
  "description": "string",
  "set_counted": false,
  "category_ids": [
    "string"
  ],
  "supplier_ids": [
    "string"
  ],
  "additional_ids": [
    "string"
  ],
  "removed_ids": [
    "string"
  ],
  "attachments": [
    {}
  ]
}

Javob

Javob tuzilishi quyidagi bilan bir xil: POST /revision/create.

PUT /revision/set-status/{id} ​

Transition a revision to a new state. Valid transitions: pending→in_progress|canceled; in_progress→done|canceled; done→canceled (blocked for products type). DONE triggers stock reconciliation and invoice creation.

Yo‘l parametrlari

ParametrTurMajburiyTavsif
idstringHaRevision ObjectId

So‘rov tanasi

MaydonTurMajburiyTavsif
statusstringHaTarget state. Transitions: pending→in_progress|canceled; in_progress→done|canceled; done→canceled (blocked for products revisions). Mumkin qiymatlar: pending, in_progress, canceled, done
json
{
  "status": "pending"
}

Javob

Javob tuzilishi quyidagi bilan bir xil: POST /revision/create.


Bu sahifa OpenAPI spetsifikatsiyasidan yaratilgan.

Bito 2.0 Integration API