NFT Concepts
Overview
BlocWise API provides comprehensive NFT (Non-Fungible Token) management capabilities. This guide covers the core concepts of NFT standards, collection management, minting processes, and transfer operations.
Token Standards
Copy {
"supported_standards": {
"ERC721": {
"description": "Standard for non-fungible tokens",
"features": [
"Unique tokens",
"Metadata support",
"Individual transfers"
],
"use_cases": [
"Digital art",
"Collectibles",
"Gaming assets"
]
},
"ERC1155": {
"description": "Multi-token standard",
"features": [
"Batch transfers",
"Mixed fungible/non-fungible",
"Gas efficient"
],
"use_cases": [
"Gaming items",
"Mixed collections",
"Large-scale NFTs"
]
}
}
}
Collections
Collection Types
Copy {
"collection_types": {
"STANDARD": {
"description": "Basic NFT collection",
"features": [
"Custom metadata",
"Royalty support",
"Transfer restrictions"
]
},
"SERIES": {
"description": "Sequential NFT releases",
"features": [
"Batch minting",
"Series tracking",
"Edition numbers"
]
},
"DYNAMIC": {
"description": "Updatable NFT metadata",
"features": [
"Metadata updates",
"State changes",
"Interactive elements"
]
}
}
}
Quick Implementation Example
Copy POST /v1/nft/collections/create
Request:
Copy {
"name": "Awesome Art Collection",
"symbol": "AAC",
"description": "Limited edition digital art pieces",
"standard": "ERC721",
"royalty_percentage": 2.5,
"metadata": {
"external_url": "https://myproject.com",
"image": "https://myproject.com/logo.png"
}
}
Response:
Copy {
"status": "success",
"data": {
"collection_id": "col_123abc",
"contract_address": "0x123...abc",
"name": "Awesome Art Collection",
"symbol": "AAC",
"standard": "ERC721",
"network": "ethereum",
"created_at": "2024-03-15T10:00:00Z"
}
}
Minting
Minting Types
Copy {
"minting_options": {
"DIRECT": {
"description": "Immediate minting",
"features": [
"Instant availability",
"Direct ownership",
"Higher gas costs"
]
},
"LAZY": {
"description": "Deferred minting",
"features": [
"Gas-efficient",
"Mint on demand",
"Reduced upfront costs"
]
},
"BATCH": {
"description": "Multiple NFT minting",
"features": [
"Cost-efficient",
"Bulk creation",
"Series support"
]
}
}
}
Minting Example
Request:
Copy {
"collection_id": "col_123abc",
"recipient": "0x456...def",
"metadata": {
"name": "Awesome Art #1",
"description": "First piece in the collection",
"image": "ipfs://Qm...",
"attributes": [
{
"trait_type": "Artist",
"value": "John Doe"
},
{
"trait_type": "Edition",
"value": "1/100"
}
]
},
"minting_type": "DIRECT"
}
Response:
Copy {
"status": "success",
"data": {
"token_id": "1",
"transaction_hash": "0x789...ghi",
"owner": "0x456...def",
"metadata_uri": "ipfs://Qm...",
"status": "MINTED"
}
}
Transfers
Transfer Types
Copy {
"transfer_types": {
"STANDARD": {
"description": "Basic NFT transfer",
"features": [
"Single token transfer",
"Direct ownership change"
]
},
"SAFE": {
"description": "Protected transfer",
"features": [
"Receiver verification",
"Contract validation",
"Failure protection"
]
},
"BATCH": {
"description": "Multiple NFT transfer",
"features": [
"Multiple tokens",
"Gas optimization",
"Bulk operations"
]
}
}
}
Transfer Example
Copy POST /v1/nft/transfer
Request:
Copy {
"collection_id": "col_123abc",
"token_id": "1",
"from": "0x123...abc",
"to": "0x789...ghi",
"transfer_type": "SAFE"
}
Response:
Copy {
"status": "success",
"data": {
"transfer_id": "transfer_123abc",
"transaction_hash": "0xabc...def",
"status": "PENDING",
"estimated_completion": "2024-03-15T10:15:00Z"
}
}
Best Practices
Collection Management
Plan collection structure before deployment
Consider metadata storage solutions
Implement proper access controls
Minting Strategy
Choose appropriate minting type
Optimize metadata storage
Implement proper validation
Transfer Security
Verify recipient addresses
Use safe transfer methods
Implement proper authorization
Next Steps
Last updated 2 months ago