Enhanced API Overview
Advanced transaction parsing, NFT metadata, and token information APIs
Enhanced API
The FortiBlox Enhanced API provides intelligent transaction parsing, NFT metadata resolution, token information, and wallet analytics powered by machine learning and comprehensive blockchain indexing.
What is Enhanced API?
Enhanced API goes beyond raw blockchain data to provide meaningful, parsed information about transactions, tokens, and NFTs. Instead of raw instruction bytes, get human-readable transaction types, token metadata, and enriched data.
Key Features
- Transaction Type Detection: Automatically classify 11 transaction types
- Token Metadata Resolution: Get token names, symbols, logos from multiple sources
- NFT Metadata Enrichment: Full NFT metadata including images and attributes
- Wallet Analytics: Historical portfolio tracking and analytics
- Smart Caching: Redis and database caching for fast responses
Transaction Types Supported
The Enhanced API can parse and classify these transaction types:
| Type | Description | Examples |
|---|---|---|
SWAP | DEX token swaps | Jupiter, Orca, Raydium, Phoenix |
NFT_SALE | NFT marketplace sales | Magic Eden, Tensor |
NFT_MINT | NFT minting | Candy Machine, Metaplex |
NFT_BID | NFT bid placement | Marketplace bids |
NFT_LISTING | NFT listing creation | List NFT for sale |
NFT_CANCEL_LISTING | Cancel NFT listing | Remove listing |
TRANSFER | SOL or SPL token transfers | Wallet to wallet |
STAKE | Staking operations | Delegate stake |
UNSTAKE | Unstaking operations | Deactivate stake |
CREATE_ACCOUNT | Account creation | Initialize account |
CLOSE_ACCOUNT | Account closure | Close token account |
Use Cases
DeFi Dashboards
Build comprehensive DeFi dashboards with transaction type filtering:
- Track all swaps across all DEXes
- Monitor staking activity
- Analyze token transfers
NFT Marketplaces
Enhance NFT marketplace functionality:
- Real-time sales notifications
- NFT metadata display
- Collection analytics
Portfolio Trackers
Create intelligent portfolio tracking:
- Automatic transaction categorization
- Token balance tracking with metadata
- Historical value calculations
Analytics Platforms
Build blockchain analytics tools:
- Transaction flow analysis
- Wallet behavior insights
- Protocol usage statistics
Authentication
All Enhanced API endpoints require authentication and explicit Enhanced API access enabled on your API key.
Enable Enhanced API Access
- Go to Developer Portal
- Select your API key
- Enable Enhanced API Access
- Set rate limit (default: 10 req/s)
Authentication Methods
# Query parameter
curl "https://nexus.fortiblox.com/api/v1/v0/token/MINT?api-key=$FORTIBLOX_API_KEY"
# HTTP header (recommended)
curl "https://nexus.fortiblox.com/api/v1/v0/token/MINT" \
-H "X-API-Key: $FORTIBLOX_API_KEY"Base URL
https://nexus.fortiblox.com/api/v1/v0Rate Limits
Enhanced API has separate rate limiting from standard RPC:
| Tier | Requests/Second | Burst Limit |
|---|---|---|
| Free | 5 | 10 |
| Developer | 10 | 20 |
| Business | 50 | 100 |
| Professional | 100 | 200 |
| Enterprise | Custom | Custom |
Credit Costs
| Endpoint | Credits | Cache TTL |
|---|---|---|
| Transaction Parse (single) | 10 | 5 min |
| Transaction Parse (batch) | 5 per tx | 5 min |
| Token Metadata | 5 | 1 hour |
| NFT Metadata | 10 | 1 hour |
| Wallet Analytics | 25 | 2 min |
| Transaction History | 15 | 2 min |
Available Endpoints
Transaction Parsing
Parse and classify transactions with metadata enrichment
Token Metadata
Get token information, symbols, and logos
NFT Metadata
Resolve NFT metadata including images and attributes
Wallet Analytics
Portfolio tracking and historical analytics
Quick Start Example
# Parse a transaction
curl -X POST "https://nexus.fortiblox.com/api/v1/v0/transactions?api-key=$FORTIBLOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"transactions": ["5j7s6NiJS3JAkvgkoc18WVAsiSaci2pxB2A6ueCJP4tprA2TFg9wSyTLeYouxPBJEMzJinENTkpA52YStRW5Dia7"]
}'
# Get token metadata
curl "https://nexus.fortiblox.com/api/v1/v0/token/EPjFWdd5Au17BXwoyS7G5Fj306awm3ibB5mWChip4Z1w?api-key=$FORTIBLOX_API_KEY"const FORTIBLOX_API_KEY = process.env.FORTIBLOX_API_KEY;
const BASE_URL = 'https://nexus.fortiblox.com/api/v1/v0';
async function parseTransaction(signature) {
const response = await fetch(
`${BASE_URL}/transactions?api-key=${FORTIBLOX_API_KEY}`,
{
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
transactions: [signature]
})
}
);
const data = await response.json();
return data.success ? data.data[0] : null;
}
async function getTokenMetadata(mint) {
const response = await fetch(
`${BASE_URL}/token/${mint}?api-key=${FORTIBLOX_API_KEY}`
);
const data = await response.json();
return data.success ? data.data : null;
}import os
import requests
FORTIBLOX_API_KEY = os.getenv('FORTIBLOX_API_KEY')
BASE_URL = 'https://nexus.fortiblox.com/api/v1/v0'
def parse_transaction(signature):
response = requests.post(
f'{BASE_URL}/transactions',
params={'api-key': FORTIBLOX_API_KEY},
json={'transactions': [signature]}
)
data = response.json()
return data['data'][0] if data['success'] else None
def get_token_metadata(mint):
response = requests.get(
f'{BASE_URL}/token/{mint}',
params={'api-key': FORTIBLOX_API_KEY}
)
data = response.json()
return data['data'] if data['success'] else NoneResponse Format
Success Response
{
"success": true,
"data": { /* response data */ },
"processing_time_ms": 45,
"cached": false
}Error Response
{
"success": false,
"error": "Error type",
"message": "Detailed message",
"error_code": "ERROR_CODE"
}Common Error Codes
| Code | Status | Description |
|---|---|---|
ENHANCED_API_DISABLED | 403 | Enhanced API not enabled for API key |
RATE_LIMIT_EXCEEDED | 429 | Too many requests |
INVALID_REQUEST | 400 | Invalid request parameters |
PARSING_FAILED | 500 | Transaction parsing failed |
NFT_NOT_FOUND | 404 | NFT metadata not found |
Next Steps
- Transaction Parsing - Parse and classify transactions
- Token Metadata - Get token information
- NFT Metadata - Resolve NFT data
- Wallet Analytics - Portfolio tracking