/v1/meta
Spec
Probeer het live
10 gratis calls per dag — geen registratie, geen API-key. Loopt via de oanor-gateway.
Het werkt. Haal een API-key op en gebruik hem in je project.
Verkrijg een API-sleutelCodefragmenten
curl "https://api.oanor.com/abtest-api/v1/meta" \ -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/abtest-api/v1/meta", {
headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/abtest-api/v1/meta");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
"https://api.oanor.com/abtest-api/v1/meta",
headers={"x-oanor-key": "oanor_test_..."}
)
Voorbeeldrespons
Een echte respons van dit endpoint, vastgelegd bij de laatste health check.
{
"data": {
"name": "A/B Bucketing API",
"notes": "Hashing is FNV-1a (32-bit) with an avalanche mix, so buckets are uniform and stable across languages and machines. Bucketing and variant assignment use independent hash domains. This assigns experiments; to test whether a result is statistically significant use a statistics API. Nothing is stored.",
"version": "v1",
"endpoints": [
{
"path": "/v1/bucket",
"params": {
"key": "the unit to bucket — user id, session, etc. (required)",
"buckets": "number of buckets (default 100)",
"experiment": "experiment/salt name so experiments are independent",
"percentage": "if set, also return enabled = inside this % rollout"
},
"returns": "the stable bucket (and rollout decision)"
},
{
"path": "/v1/variant",
"params": {
"key": "the unit (required)",
"variants": "JSON array of {name,weight}, \"a:50,b:50\", or \"a,b,c\" (equal weights)",
"experiment": "experiment/salt name"
},
"returns": "the assigned variant and the weight shares"
},
{
"path": "/v1/meta",
"params": [],
"returns": "this document"
}
],
"description": "Deterministic A/B testing and feature-flag assignment — no database, no state. The bucket endpoint hashes a key (a user id, session or device) into a stable bucket (0…N-1) that never changes for the same key, and decides whether the key is inside a percentage rollout; raising the percentage only ever adds users, so a gradual ramp-up is sticky. The variant endpoint assigns one of several weighted variants (control/treatment, or any multivariate split) consistently for the same key. Mix in an experiment name so independent experiments bucket independently. The same inputs always give the same answer everywhere, so client and server agree without coordination. Pure local, no key."
},
"meta": {
"timestamp": "2026-06-03T09:25:02.114Z",
"request_id": "4d0d62b0-9f9e-40ef-b864-05d66529f6e6"
},
"status": "ok",
"message": "Meta",
"success": true
}