srp-data-api v1.4.0
srp-data-api
npm package for SRP company for data extraction
- This package contains two methods of data extraction
getServiceAccounts- It gives the response in the form of list ofservice-accountsrelated to givenuser-accountgetMonthlyUtilityData- It gives the response in the form of list ofmonthly-utility-datafor givenservice-account
Installation
npm i srp-data-api --save
How to use?
import { SRPUtilityDataService } from 'srp-data-api';
const srpUtilityDataService = new SRPUtilityDataService();
const payload: GetDataPayload = {
password: string;
username: string;
};
const res = await srpUtilityDataService.getServiceAccounts(payload)After data extraction, we will get response as -
res: UtilityUserAccountResponse = {
id: string
name: string
serviceAccounts[]: [{id:string, address:Address}]
};const res = await srpUtilityDataService.getMonthlyUtilityData(payload)After data extraction, we will get response as -
res: MonthlyUtilityData[] = {
_id: string
amountInCents: number
energyConsumptionInWatts: number
month: string
serviceAccountId: string
year: number
};Methods
getServiceAccounts: (
payload: GetDataPayload,
) => Promise<UtilityUserAccountResponse>;
getMonthlyUtilityData: (
payload: GetDataPayload,
) => Promise<MonthlyUtilityData[]>;
setProxy:(proxy: string[]) => Promise<void>Options
GetDataPayload = {
password: string;
username: string;
};
WHERE,
password: password of the user-account
username: username of the user-account
proxy:string[]
WHERE,
proxy: VGS proxy we setResponses
UtilityUserAccountResponse = {
id: string
name: string
serviceAccounts[]: [{id:string, address:Address}]
};
WHERE,
id: user-account id
name: Name of the user
serviceAccounts[]: List of service-accounts which are linked to given user-account idMonthlyUtilityData[] = {
_id: string
amountInCents: number
energyConsumptionInWatts: number
month: string
serviceAccountId: string
year: number
};
WHERE,
_id: id of monthly utility data model
amountInCents: Cost of electricity used in respective month and year in cents
energyConsumptionInWatts: Amount of electricity consumed in respective month and year in watts
month: Month of year for which utility data is extracted
serviceAccountId: service-account id for which utility data is extracted
year: Year of calender for which utility data is extractedScripts
npm run build- For building the app.npm run test- Run automated test cases viamochaandchai.npm run start- For starting the app.npm run serve- For building and starting the app with auto-reload on changes.npm run lint- To perform linting
Overview
Typescript support
Environment specific configuation support. The application use config npm module.
Linting support
npm run lintError Handling
- If we pass incorrect credentials for getting utility-data, then...
import { SRPUtilityDataService } from 'srp-data-api';
const srpUtilityDataService = new SRPUtilityDataService();
const payload: GetDataPayload = {
password: incorrect-username;
username: incorrect-password;
};
const res = await srpUtilityDataService.getServiceAccounts(payload)The Promise gets rejected with
AuthenticationErrorwith message -The user name or password is incorrect.If we pass correct credentials for getting utility-data, but data extraction failed and service cannot extract data, then...
import { SRPUtilityDataService } from 'srp-data-api';
const srpUtilityDataService = new SRPUtilityDataService();
const payload: GetDataPayload = {
password: correct-username;
username: correct-password;
};
const res = await srpUtilityDataService.getMonthlyUtilityData(payload)- The Promise gets rejected with
DataExtractionErrorwith message -Failed to extract data
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago