Back

#utilities

16 APIs with this tag

Betting Odds API

Betting-odds maths as an API, computed locally and deterministically. The convert endpoint translates a price between every format used by bookmakers — decimal (European), fractional (UK), American (moneyline) and the implied probability — give it any one and it returns all the others, with the implied probability that the odds represent (1 ÷ decimal). The payout endpoint computes the profit and total return for a stake at given decimal or American odds. The parlay endpoint combines several decimal-odds selections into one accumulator by multiplying them, returning the combined odds, the implied probability and the payout for a stake — every leg must win, so the payout grows fast while the probability shrinks. Decimal odds are the total return per unit staked, American odds are at least +100 for an underdog or −100 or lower for a favourite, and fractional odds look like 5/2. Everything is computed locally and deterministically, so it is instant and private. Ideal for sports-betting, fantasy, odds-comparison and gaming app developers, bet-slip and value tools, and probability education. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is odds conversion; for probability distributions use a probability API.

api.oanor.com/odds-api

Homebrewing API

Homebrewing maths as an API, computed locally and deterministically. The abv endpoint computes the alcohol by volume from the original and final gravity — both the simple (OG − FG)·131.25 estimate and a more accurate high-gravity formula — along with the apparent and real attenuation and the calories per 12 oz serving. The gravity endpoint converts freely between specific gravity, degrees Plato and Brix (the three ways brewers and winemakers measure dissolved sugar) and reports the gravity points. The ibu endpoint computes hop bitterness in International Bitterness Units by the Tinseth formula from the hop alpha-acid percentage, the weight, the boil time, the batch volume and the wort gravity, returning the utilization and the alpha-acid concentration too. Gravities are specific gravity such as 1.050, hop weight in grams, boil time in minutes and volume in litres. Everything is computed locally and deterministically, so it is instant and private. Ideal for homebrew, craft-beer, cidery and winemaking app developers, recipe and batch tools, and brewing education. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is brewing maths; for a brewery directory use a beer API and for coffee brew ratios a coffee API.

api.oanor.com/brewing-api

Coffee Brewing API

Coffee brewing maths as an API, computed locally and deterministically. The ratio endpoint works out a brew recipe from any two of the coffee dose, the water and the brew ratio — water = coffee × ratio — and reports the third value, the ratio as 1:N, the number of cups and whether the recipe sits around the SCA "golden ratio" of about 1:16–1:17. The espresso endpoint does the same for espresso from any two of the dose, the yield and the brew ratio (yield = dose × brew ratio), labelling the shot ristretto, normale or lungo. The extraction endpoint computes the extraction yield, EY% = (beverage mass × TDS%) ÷ dose, from the dose, the brewed beverage mass (or the water, estimating the mass the grounds retain) and the measured total dissolved solids, then classifies the brew as under-extracted, ideal or over-extracted and weak through very strong against the SCA brewing control chart. Masses are in grams, water in grams or millilitres. Everything is computed locally and deterministically, so it is instant and private. Ideal for specialty-coffee, café, brewing-scale and recipe app developers, pour-over and espresso tools, and barista training. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is coffee brewing maths; for cooking-unit conversions use a cooking API and for caffeine intake use a caffeine API.

api.oanor.com/coffee-api

Lines API

Operate on text line by line. The transform endpoint sorts lines (natural / numeric-aware, ascending or descending, case-insensitive), removes duplicate lines, reverses their order, numbers them, trims whitespace and drops blank lines — and the operations chain in the order you list them, so trim → remove blanks → dedupe → sort happens in a single call. The count endpoint reports line statistics: total, blank, non-blank, unique and duplicate counts plus the longest, shortest and average line length. Perfect for cleaning up lists and logs, deduplicating, preparing data and tidying pasted text. Pure local computation — no key, no third-party service, instant; up to 500,000 characters via POST. Live, nothing stored. 3 endpoints. Distinct from word wrapping, sorting of JSON lists and CSV tooling.

api.oanor.com/lines-api

Sort API

Sort a list — or an array of objects by one of its keys — the way you actually want. Natural (alphanumeric) ordering puts file2 before file10 and v1.9 before v1.10, the way humans expect; alphabetical, numeric and by-length orderings are also built in, each ascending or descending, with an optional case-insensitive mode. Items can be plain strings (comma- or newline-separated) or a JSON array; for objects, give the property to sort by and rows missing it go last. Perfect for file and version lists, leaderboards and tables, tidying user input and any UI that shows sorted data. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. Distinct from set operations and CSV tooling.

api.oanor.com/sort-api

Percentage API

Everyday percentage maths as an API. Four clear operations: what is X% of a value (15% of 200 = 30); what percentage one number is of another (30 is 15% of 200); the percentage change between two numbers, with the direction and the raw difference (200 → 250 is a 25% increase); and applying a percentage increase or decrease to a value (200 + 15% = 230). Handy for discounts, tips and tax, growth and KPI deltas, progress bars, dashboards and quick spreadsheet-style sums — without writing a formula. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 5 endpoints. A focused calculator, distinct from a general math-expression engine.

api.oanor.com/percentage-api

JSON Flatten API

Flatten and unflatten JSON. Turn a deeply nested JSON object into a single-level map of dot-notation keys (a.b.c → value, arrays become a.0, a.1), and turn a flat dot-notation map back into the original nested structure. Choose the delimiter (dot, slash, anything), limit the depth, or keep arrays intact. Perfect for environment variables, i18n/translation keys, preparing JSON for CSV or spreadsheet export, analytics event properties, config diffing and form serialisation. Pure local processing — no key, no third-party service, instant. Live. 3 endpoints. Distinct from JSON validation/formatting, JSONPath querying and type inference.

api.oanor.com/flatten-api

Query String API

Parse and build URL query strings — with full support for nested objects and arrays. Turn a query string like a[b][c]=1&tags[]=x&tags[]=y into a clean nested JSON object, and turn any JSON object back into a properly-encoded query string. Choose how arrays are serialised (indices, brackets, repeated keys or comma-separated) and whether to URL-encode. Far beyond a flat key=value encoder — it handles the deep structures real web frameworks (Rails, PHP, Express/qs) use. Pure local processing — no key, no third-party service, instant. Live. 3 endpoints. Built for API request construction, parsing complex links and redirects, form-encoded bodies and webhook payloads.

api.oanor.com/querystring-api

SQL Formatter API

Format, beautify and minify SQL across 15+ dialects. Pass a query and get it pretty-printed with consistent indentation and keyword casing — for PostgreSQL, MySQL, MariaDB, SQLite, SQL Server (T-SQL), Oracle (PL/SQL), BigQuery, Snowflake, Redshift, Spark, Trino, DuckDB, ClickHouse, DB2, Hive and standard SQL. Control the indent width and whether keywords are upper-cased, lower-cased or left as-is. A minify endpoint collapses a query to a single line (stripping comments while preserving string literals), and a dialects endpoint lists everything supported. Pure local processing — no key, no third-party service, instant. Live. 4 endpoints. Built for SQL editors and IDEs, query loggers, migration tooling, documentation and code review.

api.oanor.com/sqlformat-api

TOML API

Convert and validate TOML — the config format behind Cargo.toml, pyproject.toml, Netlify and many tools. Turn TOML into JSON, turn JSON back into clean spec-compliant TOML 1.0, and validate any TOML with a precise error message (line and column) when it is malformed. Tables, arrays of tables, inline tables, typed values and datetimes are all handled. Input via the query string or the request body (up to 4 MB). Pure local processing — no key, no third-party service, instant. Live. 4 endpoints. Completes the oanor config-format family alongside the JSON, YAML, XML and CSV APIs — built for build tooling, config editors, CI and data pipelines.

api.oanor.com/toml-api

Hashids API

Turn sequential integer IDs into short, unique, non-sequential strings — and back again. Encode one or more non-negative integers (or a hex string such as a Mongo ObjectId) into a compact YouTube-style id like "vbYCZIYD", then decode it to recover the exact original values. Add a salt so your ids are unique to your application, set a minimum length, or supply a custom alphabet. It is reversible obfuscation (not encryption): perfect for hiding row ids in public URLs, building short links, and avoiding leaking how many records you have. Pure local computation — no key, no third-party service, nothing stored. Stateless: decode with the same salt/min-length/alphabet you encoded with. Live. 5 endpoints. Distinct from UUID generation, base conversion and snowflake decoding.

api.oanor.com/hashids-api

Email Parser API

Parse a raw email (RFC 822 / MIME / .eml) into clean, structured data. Send the raw message (or a URL to a .eml file) and get back the sender, recipients (to / cc / bcc / reply-to) with names and addresses split out, the subject, the parsed date, the Message-ID, In-Reply-To and References (for threading), priority, the plain-text and HTML bodies, every header, and metadata for each attachment (filename, content type, size, content-id — never the binary payload). A /v1/headers endpoint returns just the header map. Parsing is fully local (no third-party service) and nothing is stored. Live. 3 endpoints. Built for inbound-email processing, .eml viewers, mailbox import, ticketing and email-automation pipelines. Distinct from address validation and SPF/DMARC checks.

api.oanor.com/emailparse-api

vCard API

Generate and parse vCard (.vcf) contact cards. Build a standards-compliant vCard 3.0 from simple fields — name (or first/last), organisation, job title, one or more phone numbers and emails, websites, a postal address, birthday, note and a photo URL — ready to download as a .vcf or embed in a contact QR code (pair it with the QR API for "scan to save contact"). Or go the other way: parse any vCard string back into clean structured fields. Pure local processing — no key, no third-party service, nothing stored. Live. 3 endpoints. Built for digital business cards, contact QR codes, address-book import/export, CRM integrations and email-signature tools.

api.oanor.com/vcard-api

Code Execution API

Compile and run code in 35+ programming languages from a single API call — no key, no container to manage. Send source code plus an optional stdin, compiler options and runtime arguments, pick a language (python, c++, java, go, rust, c#, javascript, typescript, ruby, php, kotlin, swift, haskell, and more) or an explicit compiler version, and get back the exit code, stdout, stderr and compiler messages. List every supported language with its default compiler, browse the full compiler catalogue (175+ compilers across versions) and filter it by language. Set save=true to also get a shareable permlink. Execution runs in a sandboxed upstream and is always live (never cached). 4 endpoints, backed by the public Wandbox service. Built for online IDEs, coding-education platforms, automated grading, interview tools and "run this snippet" features. No upstream key, no cache.

api.oanor.com/codeexec-api

Jokes API

A clean, family-friendly jokes API. Fetch a random joke — or several at once — as a single-line one-liner or a two-part setup-and-delivery, filtered by category (Programming, Misc, Pun, Spooky, Christmas); search for jokes containing a specific word; and list the available categories. Safe-mode is always enforced and the offensive "Dark" category is excluded, so every joke is workplace- and family-safe. Ideal for chat and Discord bots, websites and apps that want a touch of humour, loading screens, and developer tools. Built on JokeAPI.

api.oanor.com/jokes-api

Deck of Cards API

A playing-card deck engine as an API. Create a freshly shuffled deck (one or many decks, with or without jokers), draw cards from it, and reshuffle — with full deck state tracked by a deck id so you can deal hands across multiple calls. Each card comes with its code (e.g. AS, 0H), value, suit and a PNG and SVG image URL, so you can render real cards. Draw cards statelessly from a brand-new deck for quick random picks, or keep a deck_id to build a full game. Ideal for card games and game prototypes, Discord bots, teaching and probability demos, and any app that needs a standard 52-card deck. Built on the Deck of Cards service.

api.oanor.com/cards-api