Clamp and snap a value
API · /remap-api
Range Remap API
Map numbers between ranges. The scale endpoint linearly maps a value from an input range [in_min, in_max] onto an output range [out_min, out_max] — the classic map() you reach for with sensor readings, sliders and knobs, gauges and progress bars, and data-visualisation axes. It also returns the 0–1 position t, so with the default 0–1 output range it normalizes a value, and with a 0–1 input range it interpolates (lerp); output ranges may be reversed (out_min greater than out_max) to invert direction, and an optional clamp keeps the result inside the output range instead of extrapolating. The clamp endpoint constrains a value to a minimum and maximum and can additionally snap it to the nearest step. Everything is exact local maths, instant and deterministic. Ideal for IoT and embedded (Arduino-style map), audio and DSP, graphics and game development, dashboards and charts, and UI controls. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This maps scalar values — for interpolating vectors use a vector API and for animation easing curves use an easing API.
API health
healthy- Uptime
- 100.00%
- Server probes · 24h
- Avg latency
- 87 ms
- Server probes · 24h
- Subscribers
- 4,312
- active
- Total calls
- 33
- last 7 days
Pricing
Pick a tier — billed monthly, cancel anytime.
Free
Free
- 4,635 calls / month
- 2 requests / second
- Hard cap (429 above quota, no overage)
- 4,635 calls/month
- 2 req/sec
- Scale + clamp
- No credit card
Starter
€6.15 /month
- 14,150 calls / month
- 8 requests / second
- Hard cap (429 above quota, no overage)
- 14.15k calls/month
- 8 req/sec
- Clamp + snap-to-step
- Email support
Pro
€26.05 /month
- 192,500 calls / month
- 20 requests / second
- Hard cap (429 above quota, no overage)
- 192.5k calls/month
- 20 req/sec
- IoT / dataviz / DSP pipelines
- Priority support
Mega
€64.05 /month
- 1,005,000 calls / month
- 50 requests / second
- Hard cap (429 above quota, no overage)
- 1.005M calls/month
- 50 req/sec
- Platform scale
- Dedicated SLA
Built by
Related APIs
Other APIs with overlapping tags.
Music Theory API
Music-theory maths as an API, computed locally and deterministically over the twelve-tone chromatic scale. The interval endpoint gives the number of semitones and the interval name between two notes — C to G is seven semitones, a perfect fifth. The transpose endpoint shifts one or more notes up or down by a number of semitones, so C E G transposed up seven becomes G B D and a negative value transposes down. The chord endpoint returns the notes of a chord from a root and a type — major, minor, diminished, augmented, the sevenths (major7, minor7, dominant7, diminished7, half-diminished7), sixths, suspended, add9, ninth and power chords — so C major is C E G and C7 is C E G B♭. The scale endpoint returns the notes of a scale from a root and a mode — the major and three minor scales, the seven church modes, the major and minor pentatonics, blues, whole-tone and chromatic — so C major is C D E F G A B and A natural-minor is A B C D E F G. Notes use C, C#, D♭ … B, and accidental=flat spells with flats. Everything is computed locally and deterministically, so it is instant and private. Ideal for music-education, ear-training, songwriting, DAW-plugin, notation and instrument app developers, chord-and-scale tools, and practice software. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 4 endpoints. This is pitch-class theory; for the actual frequency of a note use a music-note API.
api.oanor.com/musictheory-api
URL Canonicalize API
Normalize URLs to a canonical form so you can deduplicate, compare and clean them. The canonicalize endpoint lower-cases the scheme and host, drops the default port (80 for http, 443 for https), resolves ./ and ../ path segments and fixes percent-encoding using the standard WHATWG URL parser, then applies the cleanups you choose: strip marketing and analytics tracking parameters (all utm_* plus gclid, fbclid, msclkid, yclid, mc_eid and many more), sort the remaining query parameters into a stable order, optionally drop the #fragment, and add or remove the trailing slash. It returns the canonical URL, the fully parsed components and the exact list of changes it made. The compare endpoint canonicalizes two URLs and tells you whether they point to the same resource — perfect for catching duplicate links that differ only by tracking codes, casing, port or parameter order. Everything is computed locally with no network calls, so it is instant, private and safe. Ideal for crawlers and SEO tooling, link deduplication and analytics, cache keys, bookmarking and content pipelines. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This canonicalizes the URL string; it does not fetch it or follow redirects — for link previews and unshortening use a URL-unfurl API.
api.oanor.com/urlcanon-api
Email Normalize API
Canonicalize email addresses so you can deduplicate accounts and catch different aliases of the same inbox. The normalize endpoint lower-cases the address and applies provider-aware rules: it strips the dots from Gmail and Googlemail local parts (because Gmail ignores them) and maps googlemail.com to gmail.com, removes +tag sub-addressing for Gmail and the many providers that support it — Outlook, Hotmail, Live, iCloud, Fastmail, Proton, Yandex, Zoho, GMX and more — and, by default, for every domain so duplicates never slip through, while reporting exactly which changes it made and which provider it detected. The compare endpoint normalizes two addresses and tells you whether they resolve to the same mailbox. Everything is computed locally and deterministically, with no DNS or network calls, so it is instant and private. Ideal for sign-up and registration dedup, fraud and abuse prevention (one person, many aliases), CRM and mailing-list hygiene, and merging customer records. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This normalizes addresses for comparison; to verify that an address actually exists and can receive mail (MX, disposable, role accounts) use an email-verification API.
api.oanor.com/emailnormalize-api
Combinatorics API
Combinatorics maths as an API, computed locally and deterministically with exact arbitrary-precision integers. The factorial endpoint computes n! = 1·2·3···n (with 0! = 1) and returns it exactly as a string together with its digit count, so even very large factorials stay precise. The permutations endpoint counts ordered arrangements: without repetition nPr = n!/(n−r)! arrangements of r items chosen from n, and with repetition n^r, where each of the r positions may be any of the n items. The combinations endpoint counts unordered selections: without repetition the binomial coefficient nCr = n!/(r!·(n−r)!), and with repetition (multisets) C(n+r−1, r), where repeats are allowed. All results are computed with BigInt so they are exact no matter how large, returned as a string with the number of digits and a floating-point approximation when it fits. n and r are non-negative integers up to 100000. Everything is computed locally and deterministically, so it is instant and private. Ideal for probability, statistics, lottery, game-design, cryptography and education app developers, counting and odds tools, and discrete-maths teaching. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is counting combinatorics; for modular arithmetic use a modular API and for descriptive statistics a statistics API.
api.oanor.com/combinatorics-api
Frequently asked questions
Quick answers about pricing, quotas, and integration.
How do I get an API key for Range Remap API?
What's the rate limit for Range Remap API?
How much does Range Remap API cost?
Can I cancel my subscription anytime?
Is Range Remap API GDPR-compliant?
Pick an endpoint from the list on the left to see its details and try it.
Code snippets
Sign up to get an API key, then call any path under your slug.
curl https://api.oanor.com/remap-api/SOME_PATH \
-H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/remap-api/SOME_PATH", {
headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/remap-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
"https://api.oanor.com/remap-api/SOME_PATH",
headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())
Ratings
Sign in to rate.
No reviews yet.
Discussion
Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.
Sign in to start a thread or reply.
Sign inNew thread
·
-
Provider answer
🔒 This thread is locked — no new replies.
-
·
- No threads yet — start the discussion.
Support
Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.
Sign in to open a support ticket.
Sign inOpen new ticket
Describe what you need help with. The provider team gets an email and replies on the ticket page.
-
·
Urgent - No tickets yet for this API.