First of all, thank you for this integration!
I’m having a difficult time with Republic Services and can’t seem to find a way around it, but perhaps I am missing something.
There are 3 types of pickup, but their API returns 3 data elements with only 2 types: Solid Waste and Recycle and I’m trying to treat that as Solid Waste, Recycle, and Yard Waste.
The API returns a productDescription attribute indicating yard waste and I can see that mapped to “waste_description” in the source, but then it is later dropped and not returned with the entities. The icon is updated to mdi:leaf, but I can not locate where it is exposed so that I can use it.
I’ve tried using an alias, but that doesn’t work, as only the two types of Solid Waste and Recyle are seen.
Does anyone have any idea how I can break this into the three real types for scheduling and display on calendar?
Here’s a sample of the data returned by the API. Note productDescription:
"statusCode": 200,
"data": {
"commercial": [],
"residential": [
{
"containerId": "xxxxxxxx",
"containerType": "CA",
"containerSize": "0.48",
"containerStatus": "Open",
"containerCategory": "Residential",
"customerOwnedInd": false,
"productDescription": "TRASH CART 95/96 GAL",
"onCallInd": false,
"serviceStartDate": "yyyy-mm-dd",
"serviceChangeLastDate": "yyyy-mm-dd",
"quantityOnSite": 1,
"quantityOrdered": 1,
"wasteTypeDescription": "Solid Waste",
"mondayPickups": 0,
"tuesdayPickups": 0,
"wednesdayPickups": 0,
"thursdayPickups": 0,
"fridayPickups": 1,
"saturdayPickups": 0,
"sundayPickups": 0,
"numberOfPickupsPeriodLength": 1,
"numberOfPickupsPeriodUnit": "W",
"numberOfPickupsTotal": 1,
"poRequiredInd": false,
"contractGroupNumber": "0",
"municipalFranchiseContractNumber": "",
"revenueDistributionCode": "30",
"sharedId": "",
"liftsPerCycle": "1 Every Week",
"numberOfShares": 0,
"receiptRequiredInd": false,
"receiptRequiredDesc": "NO RECEIPT NEEDED",
"receiptRequiredCode": "N",
"accountType": "S",
"disposalCode": "",
"disposalPriceCode": "",
"cityAccount": "",
"infoProContainerId": "",
"specialHandlingFlag": " ",
"nextServiceDays": [
"2023-08-11"
],
"lawsonDivisionNumber": "",
"routeDetails": [
{
"routeNumber": "xxxx",
"stopServiceCode": "C",
"stopSequenceNumber": "",
"rdUUID": "",
"serviceCode": "REG",
"routeDescription": "RESI TRASH-POD 1",
"nextServiceDays": [
"2023-08-11"
],
"isRouteSuspended": false
}
],
"isServiceInterrupt": false
},
{
"containerId": "xxxxxxxx",
"containerType": "RC",
"containerSize": "0.32",
"containerStatus": "Open",
"containerCategory": "Residential",
"customerOwnedInd": false,
"productDescription": "RECYCLE CART 64/65 GAL",
"onCallInd": false,
"serviceStartDate": "yyyy-mm-dd",
"serviceChangeLastDate": "yyyy-mm-dd",
"quantityOnSite": 1,
"quantityOrdered": 1,
"wasteTypeDescription": "Recycle",
"mondayPickups": 1,
"tuesdayPickups": 0,
"wednesdayPickups": 0,
"thursdayPickups": 0,
"fridayPickups": 0,
"saturdayPickups": 0,
"sundayPickups": 0,
"numberOfPickupsPeriodLength": 1,
"numberOfPickupsPeriodUnit": "W",
"numberOfPickupsTotal": 1,
"poRequiredInd": false,
"contractGroupNumber": "0",
"municipalFranchiseContractNumber": "",
"revenueDistributionCode": "7A",
"sharedId": "",
"liftsPerCycle": "1 Every Week",
"numberOfShares": 0,
"receiptRequiredInd": false,
"receiptRequiredDesc": "NO RECEIPT NEEDED",
"receiptRequiredCode": "N",
"accountType": "S",
"disposalCode": "",
"disposalPriceCode": "",
"cityAccount": "",
"infoProContainerId": "",
"specialHandlingFlag": " ",
"nextServiceDays": [
"2023-08-14"
],
"lawsonDivisionNumber": "",
"routeDetails": [
{
"routeNumber": "xxxx",
"stopServiceCode": "C",
"stopSequenceNumber": "",
"rdUUID": "",
"serviceCode": "REG",
"routeDescription": "RESI RECY-POD 2",
"nextServiceDays": [
"2023-08-14"
],
"isRouteSuspended": false
}
],
"isServiceInterrupt": false
},
{
"containerId": "xxxxxxxx",
"containerType": "HY",
"containerSize": "0.50",
"containerStatus": "Open",
"containerCategory": "Residential",
"customerOwnedInd": false,
"productDescription": "YARD WASTE CAN/BAG/BUNDLE",
"onCallInd": false,
"serviceStartDate": "yyyy-mm-dd",
"serviceChangeLastDate": "yyyy-mm-dd",
"quantityOnSite": 1,
"quantityOrdered": 1,
"wasteTypeDescription": "Recycle",
"mondayPickups": 0,
"tuesdayPickups": 0,
"wednesdayPickups": 1,
"thursdayPickups": 0,
"fridayPickups": 0,
"saturdayPickups": 0,
"sundayPickups": 0,
"numberOfPickupsPeriodLength": 1,
"numberOfPickupsPeriodUnit": "W",
"numberOfPickupsTotal": 1,
"poRequiredInd": false,
"contractGroupNumber": "0",
"municipalFranchiseContractNumber": "",
"revenueDistributionCode": "7Y",
"sharedId": "",
"liftsPerCycle": "1 Every Week",
"numberOfShares": 0,
"receiptRequiredInd": false,
"receiptRequiredDesc": "NO RECEIPT NEEDED",
"receiptRequiredCode": "N",
"accountType": "S",
"disposalCode": "",
"disposalPriceCode": "",
"cityAccount": "",
"infoProContainerId": "",
"specialHandlingFlag": " ",
"nextServiceDays": [
"2023-08-09"
],
"lawsonDivisionNumber": "",
"routeDetails": [
{
"routeNumber": "xxxx",
"stopServiceCode": "C",
"stopSequenceNumber": "",
"rdUUID": "",
"serviceCode": "REG",
"routeDescription": "YARD WASTE-POD 1",
"nextServiceDays": [
"2023-08-09"
],
"isRouteSuspended": false
}
],
"isServiceInterrupt": false
}
],
"industrial": [],
"contract": [],
"isColaAccount": false
}
}