Privacy-First Advertising Network • Zcash Payments • 70% Publisher Revenue
Monetize your website with privacy-respecting ads. No tracking pixels, no cookies, just pure revenue.
Submit your website URL and Zcash payment address:
curl -X POST https://ads.shieldedapis.com/v1/publishers \
-H "Content-Type: application/json" \
-d '{
"url": "https://yourwebsite.com",
"category": "technology",
"payment_address": "zs1YourShieldedZcashAddress"
}'
Response:
{
"publisher_id": 123,
"status": "pending",
"integration_code": "<!-- Copy this into your website -->"
}
Add this single code block where you want ads to appear:
<!-- ColdPressed Ads - Replace 123 with your publisher ID -->
<div id="coldpressed-ad-123"></div>
<script>
(function() {
var pubId = 123;
var container = document.getElementById('coldpressed-ad-' + pubId);
fetch('https://ads.shieldedapis.com/v1/serve?pub_id=' + pubId + '&format=json')
.then(function(r) { return r.json(); })
.then(function(data) {
if (data.ad && data.ad.html) {
container.innerHTML = data.ad.html;
} else {
container.style.display = 'none';
}
})
.catch(function() {
container.style.display = 'none';
});
})();
</script>
<!-- End ColdPressed Ads -->
123 with your actual publisher ID from step 1
View your stats anytime:
curl https://ads.shieldedapis.com/v1/publishers/123/stats
Returns: total impressions, clicks, earnings, and payout history
To show multiple ads on one page, use different container IDs:
<!-- First Ad -->
<div id="cp-ad-1"></div>
<script>
(function() {
var container = document.getElementById('cp-ad-1');
fetch('https://ads.shieldedapis.com/v1/serve?pub_id=123&format=json')
.then(r => r.json())
.then(data => { if (data.ad) container.innerHTML = data.ad.html; })
.catch(() => container.style.display = 'none');
})();
</script>
<!-- Second Ad (different category) -->
<div id="cp-ad-2"></div>
<script>
(function() {
var container = document.getElementById('cp-ad-2');
fetch('https://ads.shieldedapis.com/v1/serve?pub_id=123&cat=finance&format=json')
.then(r => r.json())
.then(data => { if (data.ad) container.innerHTML = data.ad.html; })
.catch(() => container.style.display = 'none');
})();
</script>
For server-rendered sites (Node.js example):
// Server route
app.get('/ad', async (req, res) => {
const response = await fetch(
'https://ads.shieldedapis.com/v1/serve?pub_id=123&format=json'
);
const data = await response.json();
res.send(data.ad ? data.ad.html : '');
});
// In your template
<%- include('/ad') %>
Create ad campaigns that respect user privacy. Pay with Zcash—no accounts, no tracking.
curl -X POST https://ads.shieldedapis.com/v1/campaigns \
-H "Content-Type: application/json" \
-d '{
"budget_usd": 100.0,
"category": "technology",
"image_url": "https://yoursite.com/banner.png",
"link": "https://yoursite.com/landing",
"pricing_model": "cpm"
}'
You'll receive a payment address. Send ZEC to activate your campaign.
{
"error": "payment_required",
"payment": {
"request_id": "pay_abc123",
"amount_zec": 1.0,
"address": "t1...paymentaddress"
}
}
curl https://ads.shieldedapis.com/campaign/a1b2c3d4...
| Model | Description | Rate |
|---|---|---|
| CPM | Cost Per Mille (1000 impressions) | $2.00 / 1000 views |
| CPC | Cost Per Click | $1.00 / click |
| Metric | Value |
|---|---|
| Publisher Revenue Share | 70% of all ad spend |
| Minimum Payout | 0.1 ZEC (10,000,000 zatoshis) |
| Payout Frequency | Weekly (every Monday) |
| Payment Method | Shielded Zcash (z-address) |
| Fees | None (only Zcash network fee) |
If your site generates 10,000 impressions at $2 CPM:
Ad Spend: 10,000 / 1000 × $2 = $20
Your Earnings: $20 × 70% = $14
Zcash Rate (example): $100/ZEC
You Receive: 0.14 ZEC
/v1/campaigns
Create a new ad campaign (requires payment)
/campaign/:token_hash
View campaign statistics (public)
/v1/publishers
Register as a publisher
/v1/publishers/:id/stats
View publisher earnings and performance
/v1/serve?pub_id=:id&format=json|html
Request an ad to display
/v1/click?t=:token
Track ad click-through (redirects to ad link)
/ (service info endpoint)