Download OpenAPI specification:
This is the API documentation for the Task Management application.
| uid required | string |
| role required | string Enum: "admin" "staff" |
{- "uid": "abc123XYZ",
- "role": "admin"
}{- "message": "Role set successfully",
- "data": {
- "uid": "abc123XYZ",
- "role": "admin"
}
}| email required | string |
| password required | string |
{- "email": "user@example.com",
- "password": "password123"
}{- "message": "Sign in successful",
- "data": {
- "idToken": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
- "email": "user@example.com",
- "localId": "abc123XYZ",
- "expiresIn": "3600",
- "refreshToken": "someRefreshTokenValue"
}
}Accessible by admin, manager, and employee roles. Supports filtering using query parameters.
| category | string Enum: "Electronics" "Office Supplies" "Furniture" "Food" "Home Supplies" Example: category=Electronics |
| supplierId | string Example: supplierId=supp_1 |
| minPrice | number Example: minPrice=500 |
| maxPrice | number Example: maxPrice=2000 |
| minQuantity | number Example: minQuantity=1 |
| maxQuantity | number Example: maxQuantity=50 |
Accessible by admin and manager roles only.
| name required | string |
| description required | string |
| price required | number |
| quantity required | number |
| category required | string |
| supplierId required | string |
{- "name": "iPhone 16 Pro Max 128GB Black",
- "description": "Premium smartphone with advanced features",
- "price": 1700,
- "quantity": 5,
- "category": "Electronics",
- "supplierId": "supp_1"
}Accessible by admin and manager roles only.
| id required | string Example: prod_1 |
| name | string |
| description | string |
| price | number |
| quantity | number |
| category | string |
| supplierId | string |
{- "name": "string",
- "description": "string",
- "price": 0,
- "quantity": 0,
- "category": "string",
- "supplierId": "string"
}Accessible by admin role only.
| name required | string |
| email required | string |
| phoneNumber required | string |
| address required | string |
{- "name": "Apple Distribution Canada",
- "email": "sales@apple.ca",
- "phoneNumber": 2041234567,
- "address": "Winnipeg, MB"
}Accessible by admin role only.
| id required | string Example: supp_1 |
| name | string |
string | |
| phoneNumber | string |
| address | string |
{- "name": "string",
- "email": "string",
- "phoneNumber": "string",
- "address": "string"
}Accessible by admin, manager, and employee roles. Supports filtering using query parameters.
| productId | string^prod_\d+$ Example: productId=prod_1 |
| type | string Enum: "add" "remove" "adjust" Example: type=add |
| startDate | string <date-time> Example: startDate=2026-04-01T00:00:00.000Z |
| endDate | string <date-time> Example: endDate=2026-04-30T23:59:59.999Z |
Accessible by admin, manager, and employee roles.
| productId required | string |
| quantityChanged required | number |
| type required | string Enum: "add" "remove" "adjust" |
| notes | string |
{- "productId": "prod_1",
- "quantityChanged": 5,
- "type": "add",
- "notes": "Restocked from supplier"
}Accessible by admin and manager roles only.
| id required | string Example: trans_1 |
| notes | string |
| type | string Enum: "add" "remove" "adjust" |
{- "notes": "Updated notes",
- "type": "add"
}Retrieves Firebase user details using the user's UID. Accessible only by admin users.
| id required | string Example: Lt9yCJSVoogSanugPrS1Inv3n3K2 |
{- "message": "User retrieved successfully",
- "data": { }
}