Eskom Loadshedding API
A basic (in-progress) api to expose the Eskom loadshedding endpoints. Typescript ready!
Usage / Examples
Get the current status
; Status.getStatus.thenconsole.log'Current status: ', status;
Check if currently loadshedding
; Status.getStatus.thenconsole.log'Is currently loadshedding?', status !== LoadsheddingStage.NOT_LOADSHEDDING;
Search for municipalities
; Search.getMunicipalitiesProvince.WESTERN_CAPE.thenconsole.log 'Western Cape municipalities:', municipalities.mapel.name ;
Search for suburbs in municipalities
; Search.getMunicipalitySuburbs336 /* Beauford West's id */, 'Aard' /* Search term */.thenconsole.log'Filterd suburbs in Beaufort West:', suburbs;
Search for suburbs in SA
; Search.searchSuburbs'Ashton'.thenconsole.log'Searching for "Ashton":', results;
Get Schedule for suburb
; Schedule.getSchedule62648 /* Beeldhoursfontein, Beauford West */, LoadsheddingStage.STAGE_1.thenconsole.logJSON.stringifyschedule, null, 4; Schedule.getFullSchedule62648.thenconsole.logJSON.stringifyschedules, null, 4;
Methods
Status
- Status.getStatus(): Promise<LoadsheddingStage>;
Search
- Search.getMunicipalities(province: Province): Promise<Municipality[]>;
- Search.getMunicipalitySuburbs(municipalityId: number, searchTerm: string = '', pageNum: number = 1): Promise<Suburb[]>;
- Search.searchSuburbs(searchTerm: string, maxResults: number = 300): Promise<SearchSuburb[]>;
Schedule
- Schedule.getSchedule(suburbId: number, stage: LoadsheddingStage): Promise<LoadsheddingSchedule>;
- Schedule.getFullSchedule(suburbId: number): Promise<LoadsheddingSchedule[]>;
Models
Municipality
Suburb
Search Suburb
Schedule
Enums
Loadshedding Stage
Province