A node module for Bring! shopping lists entirely written in TypeScript.
The developers of this module are in no way endorsed by or affiliated with Bring! Labs AG, or any associated subsidiaries, logos or trademarks.
npm install bring-shopping --production
const bringApi = require(`bring-shopping`);
main();
async function main () {
// provide user and email to login
const bring = new bringApi({mail: `example@example.com`, password: `secret`});
// login to get your uuid and Bearer token
try {
await bring.login();
console.log(`Successfully logged in as ${bring.name}`);
} catch (e) {
console.error(`Error on Login: ${e.message}`);
}
// get all lists and their listUuid
const lists = await bring.loadLists();
// get items of a list by its list uuid
const items = await bring.getItems('9b3ba561-02ad-4744-a737-c43k7e5b93ec');
// get translations
const translations = await bring.loadTranslations('de-DE');
}
More important methods are getItems(listUUID)
, getItemsDetails(listUUID)
, saveItem(listUuid, itemName, specificaiton)
,
moveToRecentList(listUuid, itemName)
and getAllUsersFromList(listUuid)
.
- (foxriver76) restructure to typescript
- (foxriver76) fixed issue where error was used instead of the mssage on
getPendingInvitations
- (mdhom) added getItemsDetails method
- (foxriver76) now reject with real errors instead of strings
- (foxriver76) on new call of login overwrite bearer header to allow reauth
- (foxriver76) More information on rejection of getItems
- (foxriver76) minor fix
- (foxriver76) new functionalities -> getTranslations, getCatalog and getPendingInvitations
- (foxriver76) use API version v2
- (foxriver76) minor code optimization, nothing functional
- (foxriver76) fix links in package
- (foxriver76) offical release