Consumer sends JSON → Sertone converts to XML-RPC → Owner API processes → XML response converted back to JSON
Why XML-RPC on Sertone?
XML-RPC powers millions of WordPress sites, legacy enterprise systems, and embedded devices. These APIs are battle-tested but difficult to monetize directly. Sertone bridges that gap: register your XML-RPC endpoint, set a price per call, and the wrapper handles everything else.
Consumers interact using simple JSON — they never need to construct XML-RPC envelopes or parse XML responses. The Sertone wrapper auto-converts between JSON and XML-RPC in both directions, making legacy APIs as easy to consume as any modern REST endpoint.
Every call is paid automatically in USDC with a transparent 5% platform commission. No payment integration, no invoice chasing — just register and earn.
Try It Live
XML-RPC Method Call
Code Samples
# Call the API through YOUR local Sertone control center
$ curl -X POST https://localhost:3000/internal/call \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_CONSUMER_SECRET" \
-d '{"api_id_public": "API_UUID_FROM_CATALOG", "method": "POST", "path": "/", "params": {"method": "wp.getPost", "params": {"blog_id": 1, "post_id": 42, "fields": ["post_title", "post_content", "post_date"]}}}'
// Call the API through YOUR local Sertone control center
// Consumer secret is in Settings > Security
const response = await fetch('https://localhost:3000/internal/call', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_CONSUMER_SECRET'
},
body: JSON.stringify({
api_id_public: 'API_UUID_FROM_CATALOG',
method: 'POST',
path: '/',
params: {
method: 'wp.getPost',
params: {
blog_id: 1,
post_id: 42,
fields: ['post_title', 'post_content', 'post_date']
}
}
})
});
const data = await response.json();
console.log(data.result);
# Call the API through YOUR local Sertone control center
import requests
response = requests.post(
'https://localhost:3000/internal/call',
headers={
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_CONSUMER_SECRET'
},
json={
'api_id_public': 'API_UUID_FROM_CATALOG',
'method': 'POST',
'path': '/',
'params': {
'method': 'wp.getPost',
'params': {
'blog_id': 1,
'post_id': 42,
'fields': ['post_title', 'post_content', 'post_date']
}
}
}
)
print(response.json()['result'])
Self-Host in Minutes
Install the Control Center
Run the free Sertone Docker container. No cloud account needed.
$ docker run -d --name sertone \
-p 3000-3003:3000-3003 -p 3005-3006:3005-3006 \
-v sertone-data:/app/data \
sertone/wrapper:latest
Open the Web Console
Go to https://localhost:3002/panel in your browser. Create your account, accept terms, and your wallet is generated automatically.
Browse the Catalog
Click Catalog & SDKs in the sidebar. Search for APIs, try them in demo mode (free), then switch to production when ready.
Make Your First Call
Copy your consumer secret from Settings > Security, then use the code samples above to call any API from your own code.