Stock - Pan-Lang/backend GitHub Wiki
Stock
Endpoint
https://us-central1-pan-lang.cloudfunctions.net/stock
GET
Expects a request with a query of:
{
pantry: pantry_id
}
Return Codes and Object Results
200 OK
- Gets all stock for a pantry. Each stock item has these properties:
{
_id: id of the fooditem
count: # of items left in stock
spanish: spanish translation
french: french translation
....
chinese: chinese translation
timestamp: timestamp when it was last updated
}
422 UNPROCESSABLE ENTITY
- A result body with the message "Error getting documents" and the error. Occurs when the database has an error and the stock cannot be found within the database
POST
Expects a request with a body of:
{
pantry: pantry_id
name: Item Name
count: initial count
}
Return Codes and Object Results
200 OK
- Returns when the stock object is successfully placed in the database. Translation will be done by the backend.
422 UNPROCESSABLE ENTITY
- Returns when this item already exists in the database
500 SERVER ERROR
- Returns when the database throws an unexpected error and cannot place the object in the database
PUT
Expects a request with a body of:
{
pantry: pantry_id
_id: fooditem id
newCount: new item count
}
Return Codes and Object Results
204 OK
- Stock object in the database gets updated to the new count
422 UNPROCESSABLE ENTITY
- Returns when there is something wrong with the pantry id
Firebase Translate
Upon entry of an English stock item (with input field called name) into the stock collection, the Translate extension will create an output field called translated and add it to stock:
{
name: "beans"
translated:
es: "frijoles"
fr: "des haricots"
zh-CN: "豆子"
}