Data API
Your vessels and where they are, the requests you have raised, and what suppliers actually quoted you — as JSON, for putting inside your own scheduling or chartering software. Everything is scoped to your own organisation.
Access
Included with Fleet, Enterprise and Fleet. Issue a key in settings; keys start with bfp_.
A key can be issued on any plan and will answer 402 until the plan includes it — so the integration is built once and starts working when the plan changes, rather than being blocked until it does. Fleet is 50,000 calls a month, Enterprise 500,000.
Your fleet
GET https://bunkerfuelprices.com/api/v1/data/fleet
curl https://bunkerfuelprices.com/api/v1/data/fleet \ -H "Authorization: Bearer bfp_YOUR_KEY"
{
"organisation": "Aegean Shipping",
"vessels": [
{
"imo": "9876543", "name": "MV EXAMPLE", "segment": "commercial",
"dwt": 82000, "consumptionMtPerDay": 28.5, "serviceSpeedKts": 13.2,
"scrubber": false,
"position": {
"lat": 1.265, "lon": 103.82, "speedKts": 11.4, "courseDeg": 87,
"destination": "SGSIN",
"nextPort": { "name": "Singapore", "locode": "SGSIN" },
"etaAt": "2026-09-02T06:00:00.000Z",
"observedAt": "2026-08-30T13:31:00.000Z", "source": "aisstream"
},
"rob": { "vlsfoMt": 640, "mgoMt": 95 }
}
]
}rob is remaining on board — the number that decides how much you can actually lift, and the one most fleet systems have to ask a master for.
Requests and quotes
GET https://bunkerfuelprices.com/api/v1/data/quotes?days=90
{
"requests": [
{
"ref": "BFP-7K2M",
"port": { "name": "Singapore", "locode": "SGSIN" },
"grade": "VLSFO", "quantityMt": 1200,
"status": "comparing",
"quotes": [
{
"usdPerMt": 784.50,
"allInUsdPerMt": 799.10,
"bargeFeeUsd": 8500,
"paymentTermDays": 30,
"creditAdjUsdPerMt": 2.10,
"basis": "delivered", "validUntil": "2026-08-30T17:00:00.000Z",
"extractionConfidence": 0.96
}
]
}
]
}allInUsdPerMt is the one to compare on. The headline figure is not what you pay: it excludes the barge fee, the cost of the payment terms and your credit position with that supplier, and the gap between the two is routinely $10 to $40 a tonne. Sorting suppliers by usdPerMt reliably picks the wrong one.
extractionConfidence is how sure the parser was when it read the supplier’s email. Below 0.9 a person has looked at it.
The public price board
Open, no key needed, no plan needed.
curl "https://bunkerfuelprices.com/api/v1/prices?grade=VLSFO&limit=50"
Errors
| Status | Meaning |
|---|---|
| 401 | Missing or unknown key. |
| 402 | Key is valid, plan does not include the API. The response names the plan you are on. |
| 429 | Monthly allowance used. Resets on the first of the month. |
Your own data is yours: export it, keep it, use it however you like. Licensed market prices carry the redistribution terms set out in the Data & Pricing Policy. Suppliers post to a different endpoint — supplier API.