API Documentation
Bulfinex API v1 — deploy tokens programmatically across 100+ blockchains. All endpoints return JSON with consistent response format.
Quick Start
1. Get your API key:
POST /api/v1/account/keys {"name": "my-app", "mode": "test"}2. List supported chains:
curl https://bulfinex.com/api/v1/chains \ -H "X-API-Key: bfx_test_xxxxx"
3. Deploy a token:
curl -X POST https://bulfinex.com/api/v1/tokens \
-H "X-API-Key: bfx_test_xxxxx" \
-H "Content-Type: application/json" \
-d '{
"chainId": "polygon",
"name": "My Token",
"symbol": "MTK",
"totalSupply": "1000000",
"owner": "0x1234...5678"
}'Authentication
Include your API key in the X-API-Key header:
X-API-Key: bfx_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Free
10 req/min
Basic
60 req/min
Pro
300 req/min
Enterprise
Custom
Response Format
{
"success": true,
"data": { ... },
"meta": {
"requestId": "req_abc123",
"timestamp": "2026-03-24T12:00:00Z"
}
}Endpoints
Authentication
All API requests require an X-API-Key header.
GET
/v1/accountGET
/v1/account/usageGET
/v1/account/keysPOST
/v1/account/keysDELETE
/v1/account/keys/:idTokens
Create, validate, and manage tokens.
POST
/v1/tokensGET
/v1/tokensGET
/v1/tokens/:idGET
/v1/tokens/:id/statusPOST
/v1/tokens/validatePOST
/v1/tokens/estimateChains
List and query supported blockchains. No auth required.
GET
/v1/chainsGET
/v1/chains/:idGET
/v1/chains/:id/gasGET
/v1/chains/:id/statusPayments
Cost estimation and payment tracking.
POST
/v1/payments/estimatePOST
/v1/paymentsGET
/v1/payments/historyGET
/v1/payments/:idWebhooks
Receive real-time notifications for deployment events.
POST
/v1/webhooksGET
/v1/webhooksDELETE
/v1/webhooks/:idEnterprise
Enterprise token operations for Industry 4.0.
POST
/v1/enterprise/tokensGET
/v1/enterprise/tokensGET
/v1/enterprise/supply-chain/:idGET
/v1/enterprise/qa/verify/:idSystem
Platform status and health.
GET
/v1/healthJavaScript SDK
import { Bulfinex } from '@bulfinex/sdk';
const client = new Bulfinex('bfx_test_xxxxx');
// List chains
const chains = await client.chains.list();
// Deploy a token
const token = await client.tokens.deploy({
chain: 'polygon',
name: 'My Token',
symbol: 'MTK',
totalSupply: '1000000',
owner: '0x1234...',
features: { mintable: true, burnable: true },
});
// Check status
const status = await client.tokens.getStatus(token.id);Error Codes
MISSING_API_KEYX-API-Key header not providedINVALID_API_KEYKey format invalid or revokedRATE_LIMITEDToo many requestsVALIDATION_ERRORInput validation failedINVALID_CHAINChain not found or not supportedINVALID_ADDRESSWallet address format invalidSUPPLY_OVERFLOWSupply exceeds max uint256AUTH_REQUIREDAuthentication requiredNOT_FOUNDResource not foundINTERNAL_ERRORUnexpected server error