On-Chain CC0mon Data for Builders
The CC0mon API gives you programmatic access to on-chain CC0mon NFT data. Retrieve traits, images, metadata, and ownership for any minted CC0mon.
All data is sourced directly from the Ethereum mainnet smart contract.
Token IDs range from 1 to 10000.
Returns a summary of a CC0mon including name, traits, image URLs, owner, and links. This is the best starting endpoint for most use cases.
curl https://api.cc0mon.com/cc0mon/420
// Response:
{
"tokenId": 420,
"name": "Hydrift",
"description": "A CC0mon living on Ethereum...",
"owner": "0x1234...abcd",
"attributes": [
{ "trait_type": "Energy", "value": "Ocean" },
{ "trait_type": "Name", "value": "Hydrift" },
{ "trait_type": "Rarity", "value": "Common" }
],
"images": {
"svg": "https://api.cc0mon.com/cc0mon/420/image.svg",
"png": "https://api.cc0mon.com/cc0mon/420/image.png"
},
"opensea": "https://opensea.io/assets/ethereum/0xeeb0...9d5f/420"
}
Returns the full NFT metadata JSON, decoded directly from the on-chain tokenURI() output.
Includes name, description, attributes, and the base64-encoded SVG image.
curl https://api.cc0mon.com/cc0mon/6969/metadata
// Response: full on-chain tokenURI JSON
{
"name": "CC0mon #6969",
"description": "...",
"image": "data:image/svg+xml;base64,...",
"attributes": [...]
}
Returns the decoded traits for a CC0mon as a clean JSON object. Each CC0mon has a unique name, energy type, and rarity.
curl https://api.cc0mon.com/cc0mon/69/traits
// Response:
{
"tokenId": 69,
"name": "Gnawshark",
"attributes": [
{ "trait_type": "Energy", "value": "Ocean" },
{ "trait_type": "Name", "value": "Gnawshark" },
{ "trait_type": "Rarity", "value": "Uncommon" }
]
}
Returns the CC0mon artwork as an SVG image, decoded directly from the on-chain data. Use this in any HTML page, game, or app.
curl https://api.cc0mon.com/cc0mon/420/image.svg -o cc0mon.svg
# Use directly in HTML:
<img src="https://api.cc0mon.com/cc0mon/420/image.svg" />
Returns the CC0mon artwork as a 1000×1000 PNG image, rasterized from the on-chain SVG.
Optionally pass ?size=500 to control dimensions (64–2048px).
curl https://api.cc0mon.com/cc0mon/420/image.png -o cc0mon.png
# Custom size:
curl https://api.cc0mon.com/cc0mon/420/image.png?size=500 -o cc0mon_500.png
Returns the current Ethereum address that owns a specific CC0mon.
curl https://api.cc0mon.com/cc0mon/420/owner
// Response:
{
"tokenId": 420,
"owner": "0x1234567890abcdef1234567890abcdef12345678"
}
Returns basic information about the CC0mon smart contract: name, symbol, total supply, and links.
curl https://api.cc0mon.com/contract
// Response:
{
"name": "CC0mon",
"symbol": "CC0MON",
"address": "0xeeb036dbbd3039429c430657ed9836568da79d5f",
"network": "Ethereum Mainnet",
"totalSupply": 10000,
"maxTokenId": 10000,
"etherscan": "https://etherscan.io/address/0xeeb0...9d5f",
"opensea": "https://opensea.io/collection/cc0mon"
}
Every CC0mon has one of 16 energy types. Filter by energy using the traits endpoint.
Requests are rate-limited per IP address using a sliding window.
| Limit | Value |
|---|---|
| Requests | 60 per minute |
| Window | Sliding 60 seconds |
Rate limit headers are included in every response:
X-RateLimit-Limit, X-RateLimit-Remaining, and Retry-After (on 429).
| Status | Meaning |
|---|---|
400 | Invalid token ID (must be integer 1–10000) |
404 | Token not found or not yet minted |
429 | Rate limit exceeded |
500 | Internal server error |
// Error response format:
{ "error": "Invalid token ID: \"abc\". Must be an integer 1-10000." }
Fetch CC0mon data from any language or tool. Here are some examples to get you started:
# Fetch a CC0mon's traits
curl https://api.cc0mon.com/cc0mon/420/traits
# Download an SVG image
curl https://api.cc0mon.com/cc0mon/42/image.svg -o cc0mon_420.svg
# Use in JavaScript
const res = await fetch('https://api.cc0mon.com/cc0mon/420');
const cc0mon = await res.json();
console.log(cc0mon.name); // "Hydrift"
console.log(cc0mon.attributes); // [{trait_type: "Energy", value: "Ocean"}, ...]
# Embed in HTML
<img src="https://api.cc0mon.com/cc0mon/420/image.svg" alt="CC0mon #420" />
# Use in Python
import requests
cc0mon = requests.get('https://api.cc0mon.com/cc0mon/420').json()
print(cc0mon['name']) # "Hydrift"
CC0mon is Creative Commons Zero. That means you can use the art and data for anything. Here are some ideas to get you started: