Overview
Gas stations are pre-funded wallets that sponsor transaction fees for other wallets in the organization. On Tron, gas stations support TRX staking and resource delegation for energy and bandwidth efficiency.
- Create gas stationPOST/gasstations
- List gas stationsGET/gasstations
- Get gas stationGET/gasstations/:id
- Configure gas stationPUT/gasstations/:id
- Delete gas stationDELETE/gasstations/:id
- Refill gas stationPOST/gasstations/:id/refill
- StatsGET/gasstations/stats
- Refill historyGET/gasstations/refill-history
- Usage historyGET/gasstations/usage-history
Create Gas Station
Use Case
Provisions a new gas station for a chain/network with an optional auto-refill source.
Request Body
Display name for the gas station (2-100 characters). Shown in dashboards and audit logs.
Blockchain the gas station sponsors fees on (e.g., `ethereum`, `tron`).
Network within the chain (e.g., `mainnet`, `sepolia`).
Low-balance alert threshold (numeric, > 0) in the native asset. Crossing it flips `health_status` from `healthy` to `low`.
Turn on automatic top-ups from `refill_from_wallet_id` whenever the balance falls below `threshold`.
Amount of native asset (numeric, > 0) to move on each auto-refill.
Source treasury wallet that funds auto-refills. Required when `auto_refill_enabled = true`.
How Bitnob prices fees when sponsoring transactions from this station (e.g., `medium`, `aggressive`). Leave empty for the default strategy.
Create Gas Station Response
Unique identifier for the gas station. Use it for refills, configuration changes, and Tron staking endpoints.
Display name as supplied on creation.
Blockchain the gas station operates on.
Network within the chain.
Native asset symbol used for sponsorship (e.g., `ETH`, `TRX`).
On-chain address the gas station signs from when topping up customer wallets.
Current native-asset balance held by the station.
USD equivalent of `balance` at the latest exchange rate.
Configured low-balance threshold. Once balance dips below this, `health_status` flips to `low`.
Computed `(balance / threshold) * 100`. Useful as a single number for dashboards.
`healthy` when balance ≥ threshold; `low` when it's dropped beneath. Drive alerts off this.
Whether auto-refill is currently active.
How much native asset auto-refill will move on each top-up.
Source treasury wallet that funds auto-refills.
Gas pricing strategy this station uses when sponsoring transactions.
`active` (sponsoring) or `inactive` (paused). `active` immediately after creation.
When the gas station was created.
Timestamp of the most recent configuration update.
Total energy units available from TRX staked for energy. Tron only.
Energy consumed in the current cycle. Tron only.
Energy still available to spend in the current cycle. Tron only.
Total bandwidth points available from TRX staked for bandwidth. Tron only.
Bandwidth consumed in the current cycle. Tron only.
Bandwidth still available to spend in the current cycle. Tron only.
TRX currently staked for energy. Tron only.
TRX currently staked for bandwidth. Tron only.
List Gas Stations
Use Case
Lists gas stations in the organization.
Query Parameters
Page size. Default 20, max 100.
Number of items to skip. Default 0. Pair with `limit` for cursor-style paging.
Filter by blockchain (e.g., `ethereum`, `tron`). Useful when you run gas stations on several chains.
`active` (sponsoring) or `inactive` (paused).
List Gas Stations Response
Each entry in data[] uses the same GasStationResponse object as Create Gas Station Response. Refer there for the per-field explanations. The meta envelope below carries pagination state (total, limit, offset, has_more).
Get Gas Station
Use Case
Retrieves a single gas station by ID.
Get Gas Station Response
data is the same GasStationResponse object returned by Create Gas Station Response. Refer there for the per-field explanations.
Configure Gas Station
Use Case
Updates the gas station's configuration (name, threshold, auto-refill, gas strategy, status).
Request Body
Updated display name (2-100 characters).
New low-balance alert threshold (numeric, > 0).
Turn auto-refill on or off.
Updated per-refill amount (numeric, > 0).
Swap the source treasury wallet that funds auto-refills.
Updated gas pricing strategy used when sponsoring transactions.
Set to `active` to resume sponsoring; `inactive` to pause.
Configure Gas Station Response
data is the same GasStationResponse object returned by Create Gas Station Response. Refer there for the per-field explanations. The fields you supplied in the request body are reflected back along with a fresh updated_at timestamp.
Delete Gas Station
Use Case
Removes a gas station.
Response: 204 No Content — empty body.
Refill Gas Station
Use Case
Transfers native tokens from a source wallet to the gas station.
Request Body
Wallet to transfer from.
Amount (numeric, > 0).
1-64 characters.
Stats, Refill & Usage History
Use Case
Aggregate stats across all gas stations, plus paginated refill and usage history. The two history endpoints share the same query parameters.
Stats Response
Sum of every gas station's native balance, in their own unit. Mixed-asset orgs should treat this as informational.
USD-normalised total balance across all stations. Use this for a single dashboard number.
Count of gas stations with `status: "active"`.
Number of stations currently below their `threshold` (i.e., `health_status: "low"`). Drive ops alerts off this.
Number of sponsored / refill transactions executed today across all stations.
History Query Parameters
Used by both GET /gasstations/refill-history and GET /gasstations/usage-history.
Page size. Default 20, max 100.
Number of items to skip. Default 0.
Narrow to a single gas station.
Filter by blockchain (e.g., `ethereum`, `tron`).
Filter by transaction status (e.g., `completed`, `failed`).
Custom range start. Pair with `date_to` to scope to a precise window.
Custom range end.
Preset window: `today`, `week`, `month`, or `all`. Quicker than supplying date bounds for common ranges.