Brand prices
GET /api/v1/brands/
The pump price each brand (Goil, Star Oil, Shell and others) has set for petrol, diesel and LPG, in cedis per litre. Best for games and apps that need one price per brand.
https://pumply.co/api/v1/brands/
Example response (illustrative values, not current prices)
{
"data": {
"pricing_window": { "label": "1–15 Oct 2026", "start_date": "2026-10-01", "end_date": "2026-10-15" },
"npa_floor": { "petrol": 12.95, "diesel": 15.43, "lpg": null, "source": "National Petroleum Authority", "source_url": "https://…" },
"brands": [
{
"brand": "Star Oil",
"slug": "star-oil",
"prices": {
"petrol": { "price": 13.3, "updated_at": "2026-10-01T06:00:00Z", "current_window": true },
"diesel": { "price": 17.1, "updated_at": "2026-10-01T06:00:00Z", "current_window": true }
}
}
],
"updated_at": "2026-10-01T06:00:00Z"
},
"meta": { "api_version": "v1", "currency": "GHS", "unit": "litre", "attribution": "Prices from Pumply (pumply.co)", … }
}
National summary
GET /api/v1/prices/
Cheapest and average price for petrol, diesel and LPG across the brands that have set a price this pricing window, with how many brands that covers and the NPA floor.
https://pumply.co/api/v1/prices/
Stations near a place
GET /api/v1/stations/?lat=…&lng=…
Stations nearest to a point in Ghana, with their prices. Optional: radius_km (up to 25, default 5), fuel (petrol, diesel or lpg) and limit (up to 50, default 20).
https://pumply.co/api/v1/stations/?lat=5.6037&lng=-0.1870&radius_km=3&fuel=petrol
Example response (illustrative values, not current prices)
{
"data": {
"stations": [
{
"id": "…",
"name": "Star Oil Ashaley Botwe",
"brand": "Star Oil",
"lat": 5.6721, "lng": -0.1453, "distance_m": 850,
"fuels": ["petrol", "diesel"],
"prices": {
"petrol": { "price": 13.3, "source": "brand_price", "updated_at": "…" },
"diesel": { "price": 17.05, "source": "driver_report", "updated_at": "…" }
},
"app_url": "https://app.pumply.co/?station=…"
}
]
},
"meta": { … }
}
One station
GET /api/v1/stations/{id}/
A single station by its Pumply ID, in the same shape as above.
https://pumply.co/api/v1/stations/{id}/
Reading the data
- Prices
- Ghana cedis (GHS) per litre.
- current_window
- true when the brand has set or confirmed its price for this pricing window. false means it is still the brand's last price.
- source
- driver_report is a price a driver reported at that station. brand_price is the brand's set price, used when no recent report exists.
- brands_this_window
- How many brands the /prices/ cheapest and average are based on. Brands that have not updated yet are left out so old prices do not skew them.
- npa_floor
- The National Petroleum Authority's price floor. It is a minimum, not a pump price.
- updated_at
- When that price was last set or reported (ISO 8601, UTC).
Errors come back as { "error": { "code", "message" } } with status 400 (bad request), 404 (not found) or 503 (try again shortly). Requests from any website are allowed (CORS).
Terms of use
- Free for apps, games, research and news.
- Show “Prices from Pumply” with a link to pumply.co wherever the data appears.
- Do not resell the raw data or present it as your own.
- Responses are cached for about 5 minutes, so calling more often gives the same answer. Please cache on your side too.
- We may limit callers that send very heavy traffic. Free API keys with higher limits are coming.
Building something with Pumply data? We would like to hear about it: [email protected].