Skip to content
PharmaFlow Knowledgebase
Esc
↑↓navigate↵open⌘Jpreview

List stock transfers

Admin or auditor. Returns up to 100 transfers, newest first, with branch and medicine names. branch_id matches either side, the dates bound the day, and the result is capped not paged.

GET/api/v1/transfers
Authorization
AuthorizationBearer token (JWT) · headerrequired

JWT from POST /api/v1/auth/login sent as Authorization Bearer.

Query parameters
branch_idstring

Match a transfer whose source or destination is this branch.

medicine_idstring

Restrict to one medicine.

from_datestring

Earliest created_at, as YYYY-MM-DD or a full timestamp.

to_datestring

Latest created_at day, as YYYY-MM-DD, inclusive.

Responses
200

Up to 100 matching transfers

itemsobject[]required
Show properties
Array of object
idstringrequired
medicine_idstringrequired
from_branch_idstringrequired
to_branch_idstringrequired
qtyintegerrequired
min -9007199254740991 · max 9007199254740991
statusstringrequired
notesstringrequired
created_atstringrequired
medicine_namestring | nullrequired
from_branchstring | nullrequired
to_branchstring | nullrequired
created_by_namestring | nullrequired
totalintegerrequired
min -9007199254740991 · max 9007199254740991
401

Not authenticated

detailstringrequired
403

Caller is not an admin, branch manager, inventory manager, or auditor

detailstringrequired
Try it
Server
Authorization
Parameters
Request
curl -X GET 'http://localhost:8000/api/v1/transfers' \
  -H 'Authorization: Bearer YOUR_TOKEN'
Response
{
  "items": [
    {
      "id": "string",
      "medicine_id": "string",
      "from_branch_id": "string",
      "to_branch_id": "string",
      "qty": -9007199254740991,
      "status": "string",
      "notes": "string",
      "created_at": "string",
      "medicine_name": "string",
      "from_branch": "string",
      "to_branch": "string",
      "created_by_name": "string"
    }
  ],
  "total": -9007199254740991
}