# Botoi API - Full Reference > Botoi API provides programmatic access to developer utility tools. All endpoints accept JSON request bodies and return JSON responses. Base URL: https://api.botoi.com ## Authentication All API requests require an API key passed in the `Authorization` header: ``` Authorization: Bearer YOUR_API_KEY ``` Get your API key at https://api.botoi.com/docs Anonymous access: 5 requests/minute burst limit + 100 requests/day. Rate-limited responses include upgrade pricing and usage stats. ## MCP Tool Manifest (no auth required) Get all API endpoints as MCP-compatible tool definitions for AI agents. - Endpoint: GET https://api.botoi.com/v1/mcp/tools.json - No authentication required ``` curl https://api.botoi.com/v1/mcp/tools.json ``` Returns a JSON object with `server` metadata and a `tools` array. Each tool has `name`, `description`, and `inputSchema` fields compatible with the Model Context Protocol. --- ## MCP Server (Streamable HTTP) Botoi runs an MCP server at `https://api.botoi.com/mcp` exposing 49 curated tools. AI coding assistants (Claude Desktop, Cursor, VS Code, Claude Code) can connect directly. The protocol is MCP Streamable HTTP, which sends JSON-RPC 2.0 messages over HTTP POST. No session initialization is required; the server is stateless. Anonymous access applies the same rate limits as the REST API (5 req/min burst, 100 req/day). Pass an API key via the `Authorization` header for higher limits. ### All 49 tool names by category Lookup (17): - lookup_ip, lookup_dns, lookup_whois, lookup_ssl, lookup_email, lookup_headers - lookup_url_metadata, lookup_domain_availability, lookup_tech_detect, lookup_vpn_detect, lookup_phone, lookup_company - lookup_address_validate, lookup_breach_check, lookup_ssl_cert_expiry, lookup_dns_monitor, lookup_accessibility Text & Data (10): - text_base64_encode, text_base64_decode, text_json_format, text_json_validate - text_markdown_to_html, text_html_to_markdown, text_csv_to_json - text_yaml_to_json, text_json_to_yaml, text_xml_to_json Developer Utilities (12): - dev_hash, dev_uuid, dev_jwt_sign, dev_jwt_verify, dev_cron_describe, dev_password_generate - dev_url_encode, dev_url_decode, dev_regex_test, dev_diff, dev_semver_parse, dev_timestamp_convert Security (5): - security_encrypt, security_decrypt, security_totp_generate, security_validate_credit_card, security_pii_detect Transform (5): - transform_minify_js, transform_minify_css, transform_sql_format, transform_code_format, transform_json_to_typescript ### Example: list available tools Request: ```json POST https://api.botoi.com/mcp Content-Type: application/json { "jsonrpc": "2.0", "id": 1, "method": "tools/list" } ``` Response (abbreviated): ```json { "jsonrpc": "2.0", "id": 1, "result": { "tools": [ { "name": "lookup_ip", "description": "Look up geolocation, ISP, and network details for an IP address.", "inputSchema": { "type": "object", "properties": { "ip": { "type": "string" } }, "required": ["ip"] } } ] } } ``` ### Example: call a tool Request: ```json POST https://api.botoi.com/mcp Content-Type: application/json { "jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": { "name": "dev_hash", "arguments": { "input": "Hello, World!", "algorithm": "sha256" } } } ``` Response: ```json { "jsonrpc": "2.0", "id": 2, "result": { "content": [ { "type": "text", "text": "{\"hash\":\"dffd6021bb2bd5b0af676290809ec3a53191dd81c7f70a4b28688a362182986f\",\"algorithm\":\"sha256\"}" } ] } } ``` ### Configuration for AI clients Claude Desktop (`claude_desktop_config.json`): ```json { "mcpServers": { "botoi": { "type": "streamable-http", "url": "https://api.botoi.com/mcp" } } } ``` Claude Code (`.claude/settings.json` or project settings): ```json { "mcpServers": { "botoi": { "type": "streamable-http", "url": "https://api.botoi.com/mcp" } } } ``` Cursor (`.cursor/mcp.json`): ```json { "mcpServers": { "botoi": { "url": "https://api.botoi.com/mcp", "type": "streamable-http" } } } ``` VS Code (`settings.json`): ```json { "mcp": { "servers": { "botoi": { "type": "streamable-http", "url": "https://api.botoi.com/mcp" } } } } ``` Authenticated access (any client): add `"headers": { "Authorization": "Bearer YOUR_API_KEY" }` to the server config for higher rate limits. --- ## Base64 Encode Encode a string to Base64. - Endpoint: POST https://api.botoi.com/v1/base64/encode - Use case: Encode binary data, credentials, or strings for safe transport in URLs, headers, or JSON payloads. Request: ```json { "input": "Hello, World!" } ``` Response: ```json { "output": "SGVsbG8sIFdvcmxkIQ==", "encoding": "base64" } ``` --- ## Base64 Decode Decode a Base64 string back to plaintext. - Endpoint: POST https://api.botoi.com/v1/base64/decode - Use case: Decode Base64-encoded payloads from APIs, JWTs, or data URIs. Request: ```json { "input": "SGVsbG8sIFdvcmxkIQ==" } ``` Response: ```json { "output": "Hello, World!", "encoding": "utf-8" } ``` --- ## Hash Generation Generate cryptographic hashes from input text. - Endpoint: POST https://api.botoi.com/v1/hash - Use case: Generate checksums for file integrity verification, password hashing, or data deduplication. Request: ```json { "input": "Hello, World!", "algorithm": "sha256" } ``` Supported algorithms: `sha1`, `sha256`, `sha384`, `sha512`, `md5` Response: ```json { "hash": "dffd6021bb2bd5b0af676290809ec3a53191dd81c7f70a4b28688a362182986f", "algorithm": "sha256" } ``` --- ## UUID Generation Generate a random UUID v4. - Endpoint: POST https://api.botoi.com/v1/uuid/v4 - Use case: Create unique identifiers for database records, session tokens, or correlation IDs. Request: ```json { "count": 1 } ``` Response: ```json { "uuids": ["f47ac10b-58cc-4372-a567-0e02b2c3d479"] } ``` --- ## URL Encode Percent-encode a string for safe use in URLs. - Endpoint: POST https://api.botoi.com/v1/url/encode - Use case: Encode query parameters, path segments, or form data for HTTP requests. Request: ```json { "input": "hello world & foo=bar" } ``` Response: ```json { "output": "hello%20world%20%26%20foo%3Dbar" } ``` --- ## URL Decode Decode a percent-encoded URL string. - Endpoint: POST https://api.botoi.com/v1/url/decode - Use case: Decode query strings or URL-encoded form data from HTTP requests. Request: ```json { "input": "hello%20world%20%26%20foo%3Dbar" } ``` Response: ```json { "output": "hello world & foo=bar" } ``` --- ## JSON Format Format and beautify JSON with configurable indentation. - Endpoint: POST https://api.botoi.com/v1/json/format - Use case: Pretty-print minified JSON for readability, or minify JSON for compact storage. Request: ```json { "input": "{\"name\":\"botoi\",\"type\":\"api\"}", "indent": 2, "sortKeys": false } ``` Response: ```json { "output": "{\n \"name\": \"botoi\",\n \"type\": \"api\"\n}", "valid": true } ``` --- ## JSON Validate Validate whether a string is valid JSON and return parsing errors. - Endpoint: POST https://api.botoi.com/v1/json/validate - Use case: Validate JSON configuration files, API responses, or user input before processing. Request: ```json { "input": "{\"name\": \"botoi\"}" } ``` Response: ```json { "valid": true, "error": null } ``` --- ## QR Code Generation Generate a QR code image from text or a URL. - Endpoint: POST https://api.botoi.com/v1/qr/generate - Use case: Create QR codes for URLs, WiFi credentials, contact cards, or payment links. Request: ```json { "data": "https://botoi.com", "size": 300, "format": "png" } ``` Supported formats: `png`, `svg` Response: Binary image data with appropriate Content-Type header (`image/png` or `image/svg+xml`). --- ## OG Image Generation Generate Open Graph images for social media sharing. - Endpoint: POST https://api.botoi.com/v1/og/generate - Use case: Create dynamic social media preview images for blog posts, product pages, or tool pages. Request: ```json { "title": "JSON Formatter", "description": "Format and validate JSON data online", "theme": "dark", "width": 1200, "height": 630 } ``` Response: Binary PNG image data with `Content-Type: image/png`. --- ## Password Generation Generate cryptographically secure random passwords. - Endpoint: POST https://api.botoi.com/v1/password/generate - Use case: Create strong passwords for user accounts, API keys, or secret tokens. Request: ```json { "length": 24, "uppercase": true, "lowercase": true, "numbers": true, "symbols": true, "count": 1 } ``` Response: ```json { "passwords": ["aB3$kL9!mN2@pQ7&rS5^tU"] } ``` --- ## Markdown to HTML Convert Markdown text to sanitized HTML. - Endpoint: POST https://api.botoi.com/v1/markdown/to-html - Use case: Render user-authored Markdown content as HTML for web pages, emails, or documentation. Request: ```json { "input": "# Hello\n\nThis is **bold** text with a [link](https://botoi.com)." } ``` Response: ```json { "html": "

Hello

\n

This is bold text with a link.

" } ``` --- ## Regex Testing Test a regular expression against input text and return matches. - Endpoint: POST https://api.botoi.com/v1/regex/test - Use case: Validate regex patterns, extract matches from text, or test pattern matching logic. Request: ```json { "pattern": "\\b\\w+@\\w+\\.\\w+\\b", "flags": "gi", "input": "Contact us at hello@botoi.com or support@botoi.com" } ``` Response: ```json { "matches": [ { "match": "hello@botoi.com", "index": 14, "groups": [] }, { "match": "support@botoi.com", "index": 33, "groups": [] } ], "count": 2, "valid": true } ``` --- ## Lorem Ipsum Generation Generate placeholder text in various formats. - Endpoint: POST https://api.botoi.com/v1/lorem/generate - Use case: Create placeholder text for design mockups, wireframes, or content templates. Request: ```json { "type": "paragraphs", "count": 2 } ``` Supported types: `words`, `sentences`, `paragraphs` Response: ```json { "text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n\nUt enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat." } ``` --- ## Cron Expression Parsing Parse and describe cron expressions in human-readable format. - Endpoint: POST https://api.botoi.com/v1/cron/parse - Use case: Validate cron schedules, convert cron syntax to readable descriptions, or calculate next execution times. Request: ```json { "expression": "0 9 * * 1-5" } ``` Response: ```json { "valid": true, "description": "At 09:00 AM, Monday through Friday", "nextRuns": [ "2026-03-25T09:00:00Z", "2026-03-26T09:00:00Z", "2026-03-27T09:00:00Z" ] } ``` --- ## IP Geolocation Geolocate an IP address using Cloudflare's edge network. - Endpoint: POST https://api.botoi.com/v1/ip/lookup - Use case: Detect visitor location for personalization, compliance, fraud detection, or analytics. Request: ```json { "ip": "203.0.113.1" } ``` Omit the "ip" field to geolocate the caller's own IP. Response: ```json { "ip": "203.0.113.1", "country": "US", "country_name": "United States", "city": "San Francisco", "region": "California", "region_code": "CA", "continent": "NA", "latitude": 37.7749, "longitude": -122.4194, "timezone": "America/Los_Angeles", "postal_code": "94105", "asn": 13335, "as_organization": "Cloudflare Inc", "connection": { "colo": "SFO" } } ``` --- ## Email Validation Validate an email address with format, MX, disposable, free provider, and role-based checks. - Endpoint: POST https://api.botoi.com/v1/email/validate - Use case: Clean email lists, prevent fake signups, detect disposable addresses, suggest typo corrections. Request: ```json { "email": "user@gmail.com" } ``` Response: ```json { "email": "user@gmail.com", "is_valid": true, "format_valid": true, "mx_found": true, "mx_records": ["gmail-smtp-in.l.google.com"], "is_disposable": false, "is_free_provider": true, "is_role_based": false, "domain": "gmail.com", "local_part": "user", "suggestion": null } ``` --- ## User Agent Parsing Parse user agent strings into browser, engine, OS, and device components. - Endpoint: POST https://api.botoi.com/v1/useragent/parse - Use case: Browser/device detection for analytics, feature flags, or content adaptation. Request: ```json { "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" } ``` Omit "user_agent" to parse the caller's User-Agent header. Response: ```json { "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)...", "browser": { "name": "Chrome", "version": "120.0.0.0", "major": "120" }, "engine": { "name": "Blink", "version": "120.0.0.0" }, "os": { "name": "macOS", "version": "10.15.7" }, "device": { "type": "desktop", "vendor": "Apple", "model": "Macintosh" }, "is_bot": false } ``` --- ## Timezone Lookup Get current time in a timezone or convert between timezones. - Endpoint: POST https://api.botoi.com/v1/timezone - Use case: Display localized times, schedule across timezones, detect DST transitions. Request: ```json { "timezone": "America/New_York" } ``` Response: ```json { "timezone": "America/New_York", "abbreviation": "EDT", "utc_offset": "-04:00", "is_dst": true, "current_time": "2026-03-24T10:30:00-04:00", "unix_timestamp": 1774620600 } ``` ## Timezone Conversion Convert a datetime from one timezone to another. - Endpoint: POST https://api.botoi.com/v1/timezone/convert - Use case: Schedule meetings across timezones, convert event times, display local times. Request: ```json { "datetime": "2026-03-24T10:30:00", "from": "America/New_York", "to": "Asia/Tokyo" } ``` Response: ```json { "from": { "timezone": "America/New_York", "datetime": "2026-03-24T10:30:00-04:00", "abbreviation": "EDT" }, "to": { "timezone": "Asia/Tokyo", "datetime": "2026-03-24T23:30:00+09:00", "abbreviation": "JST" }, "offset_diff": "+13:00" } ``` --- ## DNS Lookup Query DNS records for any domain using Cloudflare DNS-over-HTTPS. - Endpoint: POST https://api.botoi.com/v1/dns/lookup - Use case: Check DNS configuration, verify MX records, audit domain setup. Request: ```json {"domain": "github.com", "type": "MX"} ``` Supported types: A, AAAA, MX, TXT, CNAME, NS, SOA, PTR Response: ```json {"domain": "github.com", "type": "MX", "records": [{"type": "MX", "value": "aspmx.l.google.com", "priority": 1, "ttl": 3600}], "query_time_ms": 12} ``` --- ## DNS Batch Lookup Query multiple DNS record types in parallel. - Endpoint: POST https://api.botoi.com/v1/dns/batch - Use case: Full domain audit in a single API call. Request: ```json {"domain": "github.com", "types": ["A", "MX", "TXT"]} ``` Response: ```json {"domain": "github.com", "results": {"A": [...], "MX": [...], "TXT": [...]}} ``` --- ## URL Metadata Extraction Fetch a URL and extract Open Graph, Twitter Card, and HTML meta tags. - Endpoint: POST https://api.botoi.com/v1/url-metadata - Use case: Build link previews, social sharing cards, or SEO audit tools. Request: ```json {"url": "https://github.com"} ``` Response: ```json {"url": "https://github.com", "status": 200, "title": "GitHub", "description": "Where the world builds software", "og": {"title": "GitHub", "image": "...", "type": "website"}, "twitter": {"card": "summary_large_image"}, "favicon": "https://github.com/favicon.ico", "canonical": "https://github.com", "language": "en", "keywords": [], "theme_color": null} ``` --- ## Random Data Generation Generate realistic fake identities for testing. - Endpoint: POST https://api.botoi.com/v1/random/data - Use case: Seed test databases, create demo data, prototype UIs with realistic content. Request: ```json {"count": 2} ``` Response: ```json {"count": 2, "data": [{"first_name": "Sarah", "last_name": "Johnson", "email": "sarah.johnson@gmail.com", "phone": "(415) 555-1234", "address": {"street": "742 Oak Ave", "city": "San Francisco", "state": "CA", "zip": "94102"}, "company": "Acme Corp", "uuid": "..."}]} ``` --- ## Color Conversion Convert colors between HEX, RGB, HSL formats with luminance and contrast data. - Endpoint: POST https://api.botoi.com/v1/color/convert - Use case: Design system tooling, accessibility checks, color format conversion. Request: ```json {"color": "#3EC997"} ``` Response: ```json {"input": "#3EC997", "format_detected": "hex", "hex": "#3EC997", "rgb": {"r": 62, "g": 201, "b": 151}, "hsl": {"h": 158, "s": 55, "l": 52}, "is_light": true, "luminance": 0.48, "contrast_white": 1.8, "contrast_black": 11.7} ``` --- ## Color Palette Generation Generate harmonious color palettes using color theory. - Endpoint: POST https://api.botoi.com/v1/color/palette - Use case: Generate design palettes, explore color combinations, build theme generators. Request: ```json {"color": "#3EC997", "type": "triadic"} ``` Supported types: complementary, analogous, triadic, tetradic, split-complementary, monochromatic Response: ```json {"base": "#3EC997", "type": "triadic", "palette": [{"hex": "#3EC997", "rgb": "rgb(62, 201, 151)", "hsl": "hsl(158, 55%, 52%)", "is_light": true}, {"hex": "#973EC9", "hsl": "hsl(278, 55%, 52%)"}, {"hex": "#C9973E", "hsl": "hsl(38, 55%, 52%)"}]} ``` --- ## Text Statistics Analyze text and return statistics. - Endpoint: POST https://api.botoi.com/v1/text/stats - Use case: Content analysis, reading time estimation, SEO tools. Request: ```json {"text": "The quick brown fox."} ``` Response: ```json {"characters": 20, "words": 4, "sentences": 1, "reading_time_seconds": 1} ``` --- ## Text Slugify Convert text to a URL-safe slug. - Endpoint: POST https://api.botoi.com/v1/text/slugify - Use case: Generate URL-safe slugs from titles, with accent handling. Request: ```json {"text": "Hello World! Über Cool", "separator": "-"} ``` Response: ```json {"slug": "hello-world-uber-cool", "length": 21} ``` --- ## JWT Decode Decode a JWT token without verifying the signature. - Endpoint: POST https://api.botoi.com/v1/jwt/decode - Use case: Decode JWT tokens for debugging, inspect claims and expiration. Request: ```json {"token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.xxx"} ``` Response: ```json {"header": {"alg": "HS256"}, "payload": {"sub": "1234567890"}, "is_expired": null} ``` --- ## Text Diff Compare two texts line by line. - Endpoint: POST https://api.botoi.com/v1/diff - Use case: Compare text versions, code review, content tracking. Request: ```json {"original": "hello\nworld", "modified": "hello\nthere"} ``` Response: ```json {"changes": [...], "stats": {"additions": 1, "removals": 1, "unchanged": 1}} ``` --- ## JSON Diff Deep-compare two JSON objects. - Endpoint: POST https://api.botoi.com/v1/diff/json - Use case: Compare API responses, config changes, data migrations. Request: ```json {"original": {"name": "foo"}, "modified": {"name": "bar"}} ``` Response: ```json {"changes": [{"path": "name", "type": "changed", "old_value": "foo", "new_value": "bar"}], "is_equal": false} ``` --- ## Number Format Format a number with locale and style options. - Endpoint: POST https://api.botoi.com/v1/number/format - Use case: Locale-aware number formatting, currency display, compact notation. Request: ```json {"number": 1234567.89, "style": "currency", "currency": "USD"} ``` Response: ```json {"formatted": "$1,234,567.89", "locale": "en-US"} ``` --- ## IP Range Check Check if an IP is within a CIDR range. - Endpoint: POST https://api.botoi.com/v1/ip/in-range - Use case: IP allowlisting, CIDR-based access control, network segmentation. Request: ```json {"ip": "192.168.1.50", "range": "192.168.1.0/24"} ``` Response: ```json {"in_range": true, "network": "192.168.1.0", "broadcast": "192.168.1.255", "total_hosts": 256} ``` --- ## WHOIS/RDAP Lookup Look up domain registration data using RDAP (the modern replacement for WHOIS). - Endpoint: POST https://api.botoi.com/v1/whois - Use case: Check domain ownership, registration dates, expiration status, or registrar details for due diligence, brand protection, or domain purchasing decisions. Request: ```json { "domain": "github.com" } ``` Response: ```json { "domain": "github.com", "registrar": "MarkMonitor Inc.", "created": "2007-10-09T18:20:50Z", "updated": "2024-09-06T09:24:12Z", "expires": "2026-10-09T07:00:00Z", "status": ["clientDeleteProhibited", "clientTransferProhibited", "clientUpdateProhibited"], "nameservers": ["dns1.p08.nsone.net", "dns2.p08.nsone.net", "dns3.p08.nsone.net", "dns4.p08.nsone.net", "ns-1707.awsdns-21.co.uk", "ns-520.awsdns-01.net"], "dnssec": false } ``` --- ## SSL/Security Headers Fetch SSL certificate details and HTTP security headers for a domain. - Endpoint: POST https://api.botoi.com/v1/ssl - Use case: Audit a domain's SSL certificate validity, expiration, and security header configuration for compliance checks, vulnerability scanning, or monitoring dashboards. Request: ```json { "domain": "github.com" } ``` Response: ```json { "domain": "github.com", "ssl": { "valid": true, "issuer": "DigiCert Inc", "subject": "github.com", "issued": "2024-03-07T00:00:00Z", "expires": "2025-03-12T23:59:59Z", "days_remaining": 352, "protocol": "TLSv1.3", "serial_number": "0A:1B:2C:3D:4E:5F" }, "headers": { "strict-transport-security": "max-age=31536000; includeSubdomains; preload", "x-frame-options": "deny", "x-content-type-options": "nosniff", "content-security-policy": "default-src 'none'; ...", "x-xss-protection": "0", "referrer-policy": "origin-when-cross-origin" }, "grade": "A+" } ``` --- ## DNS Propagation Check DNS propagation status across multiple global resolvers. - Endpoint: POST https://api.botoi.com/v1/dns/propagation - Use case: Verify that DNS changes (A records, MX records, CNAME updates) have propagated worldwide after a migration, domain transfer, or DNS provider switch. Request: ```json { "domain": "botoi.com", "type": "A" } ``` Supported types: A, AAAA, MX, TXT, CNAME, NS Response: ```json { "domain": "botoi.com", "type": "A", "results": [ {"resolver": "Google (8.8.8.8)", "location": "US", "records": ["104.21.32.1"], "propagated": true, "response_time_ms": 8}, {"resolver": "Cloudflare (1.1.1.1)", "location": "US", "records": ["104.21.32.1"], "propagated": true, "response_time_ms": 5}, {"resolver": "Quad9 (9.9.9.9)", "location": "EU", "records": ["104.21.32.1"], "propagated": true, "response_time_ms": 12}, {"resolver": "OpenDNS (208.67.222.222)", "location": "US", "records": ["104.21.32.1"], "propagated": true, "response_time_ms": 15} ], "fully_propagated": true, "consistent": true } ``` --- ## IP Reverse DNS Perform a reverse DNS (PTR) lookup on an IP address. - Endpoint: POST https://api.botoi.com/v1/ip/reverse - Use case: Identify the hostname associated with an IP address for log analysis, email deliverability checks, or network diagnostics. Request: ```json { "ip": "140.82.121.4" } ``` Response: ```json { "ip": "140.82.121.4", "hostnames": ["lb-140-82-121-4-iad.github.com"], "verified": true, "query_time_ms": 18 } ``` --- ## IP Bulk Lookup Geolocate multiple IP addresses in a single request. - Endpoint: POST https://api.botoi.com/v1/ip/bulk - Use case: Batch-process server logs, enrich analytics data, or geolocate a list of visitor IPs in one API call instead of many. Request: ```json { "ips": ["203.0.113.1", "198.51.100.50", "8.8.8.8"] } ``` Response: ```json { "results": [ {"ip": "203.0.113.1", "country": "US", "country_name": "United States", "city": "San Francisco", "region": "California", "timezone": "America/Los_Angeles"}, {"ip": "198.51.100.50", "country": "GB", "country_name": "United Kingdom", "city": "London", "region": "England", "timezone": "Europe/London"}, {"ip": "8.8.8.8", "country": "US", "country_name": "United States", "city": "Mountain View", "region": "California", "timezone": "America/Los_Angeles"} ], "count": 3 } ``` --- ## Request Headers Return the HTTP request headers as seen by the server. - Endpoint: POST https://api.botoi.com/v1/headers - Use case: Debug proxy configurations, verify forwarded headers, inspect what your client is sending, or confirm CORS preflight behavior. Request: ```json {} ``` Response: ```json { "headers": { "host": "api.botoi.com", "user-agent": "curl/8.4.0", "accept": "application/json", "authorization": "Bearer bot_xxxx...xxxx", "content-type": "application/json", "cf-connecting-ip": "203.0.113.1", "cf-ipcountry": "US", "x-forwarded-proto": "https" }, "ip": "203.0.113.1", "method": "POST" } ``` --- ## Phone Validation Validate and parse phone numbers with country detection and formatting. - Endpoint: POST https://api.botoi.com/v1/phone - Use case: Validate user-submitted phone numbers at signup, normalize phone formats for storage, detect the carrier or line type for SMS delivery. Request: ```json { "phone": "+14155552671", "country": "US" } ``` The `country` field is optional. Providing it helps parse numbers without a country code. Response: ```json { "phone": "+14155552671", "valid": true, "country": "US", "country_name": "United States", "calling_code": "+1", "national_format": "(415) 555-2671", "international_format": "+1 415-555-2671", "e164_format": "+14155552671", "type": "mobile", "carrier": "T-Mobile USA" } ``` --- ## Company/Domain Info Look up company information from a domain name. - Endpoint: POST https://api.botoi.com/v1/company - Use case: Enrich CRM leads with company data, build prospecting tools, auto-fill company fields during signup, or verify business domains. Request: ```json { "domain": "stripe.com" } ``` Response: ```json { "domain": "stripe.com", "name": "Stripe", "description": "Financial infrastructure for the internet", "industry": "Financial Technology", "founded": 2010, "logo": "https://logo.clearbit.com/stripe.com", "country": "US", "city": "San Francisco", "state": "California", "employees_range": "5001-10000", "tech_stack": ["Cloudflare", "Ruby", "React"], "social": { "twitter": "https://twitter.com/stripe", "linkedin": "https://linkedin.com/company/stripe" } } ``` --- ## Text Truncation Truncate text to a specified length with configurable ellipsis and word boundary awareness. - Endpoint: POST https://api.botoi.com/v1/text/truncate - Use case: Create excerpts for blog listings, truncate descriptions for card UIs, or clip long strings for database fields while preserving readability. Request: ```json { "text": "Botoi provides free online developer tools and paid APIs for programmatic access to common utilities.", "length": 50, "ellipsis": "...", "word_boundary": true } ``` Response: ```json { "original_length": 101, "truncated": "Botoi provides free online developer tools and...", "truncated_length": 50, "was_truncated": true } ``` --- ## URL Extraction Extract all URLs from a block of text. - Endpoint: POST https://api.botoi.com/v1/text/extract-urls - Use case: Parse URLs from user-generated content, extract links from email bodies, build web scrapers, or audit content for external link references. Request: ```json { "text": "Check out https://botoi.com and visit http://docs.botoi.com/api for the full reference. Also see botoi.com/tools for free tools." } ``` Response: ```json { "urls": [ "https://botoi.com", "http://docs.botoi.com/api" ], "count": 2 } ``` --- ## Email Extraction Extract all email addresses from a block of text. - Endpoint: POST https://api.botoi.com/v1/text/extract-emails - Use case: Parse email addresses from documents, scrape contact information from web pages, or extract recipients from email threads. Request: ```json { "text": "Reach us at support@botoi.com or sales@botoi.com. For press inquiries, email press@botoi.com." } ``` Response: ```json { "emails": [ "support@botoi.com", "sales@botoi.com", "press@botoi.com" ], "count": 3 } ``` --- ## Language Detection Detect the language of a text string. - Endpoint: POST https://api.botoi.com/v1/text/language - Use case: Route support tickets by language, filter multilingual content, auto-select translation targets, or tag user-generated content with its language. Request: ```json { "text": "Bonjour le monde, comment allez-vous aujourd'hui?" } ``` Response: ```json { "language": "fr", "language_name": "French", "confidence": 0.97, "alternatives": [ {"language": "it", "language_name": "Italian", "confidence": 0.02}, {"language": "es", "language_name": "Spanish", "confidence": 0.01} ] } ``` --- ## Case Conversion Convert text between different casing styles. - Endpoint: POST https://api.botoi.com/v1/text/case - Use case: Convert titles to URL slugs, generate variable names from labels, normalize user input, or transform between camelCase, snake_case, and other formats. Request: ```json { "text": "hello world from botoi", "to": "camelCase" } ``` Supported cases: `camelCase`, `PascalCase`, `snake_case`, `SCREAMING_SNAKE_CASE`, `kebab-case`, `Title Case`, `UPPER CASE`, `lower case`, `Sentence case` Response: ```json { "original": "hello world from botoi", "converted": "helloWorldFromBotoi", "case": "camelCase" } ``` --- ## HTML Sanitization Sanitize HTML input by stripping dangerous tags and attributes while preserving safe content. - Endpoint: POST https://api.botoi.com/v1/html-sanitize - Use case: Clean user-generated HTML before rendering, prevent XSS attacks, sanitize rich text editor output, or strip scripts from email content. Request: ```json { "html": "

Hello

Safe paragraph

", "allowed_tags": ["h1", "p", "a", "strong", "em", "ul", "li", "img"], "allowed_attributes": ["href", "src", "alt"] } ``` Response: ```json { "sanitized": "

Hello

Safe paragraph

", "removed_tags": ["script"], "removed_attributes": ["onclick", "onerror", "style"] } ``` --- ## CSV to JSON Convert CSV data to a JSON array of objects. - Endpoint: POST https://api.botoi.com/v1/csv/to-json - Use case: Parse uploaded CSV files for processing, convert spreadsheet exports to JSON for APIs, or transform tabular data for database imports. Request: ```json { "csv": "name,email,role\nAlice,alice@example.com,admin\nBob,bob@example.com,user", "delimiter": ",", "headers": true } ``` Response: ```json { "data": [ {"name": "Alice", "email": "alice@example.com", "role": "admin"}, {"name": "Bob", "email": "bob@example.com", "role": "user"} ], "rows": 2, "columns": 3 } ``` --- ## JSON to CSV Convert a JSON array of objects to CSV format. - Endpoint: POST https://api.botoi.com/v1/csv/to-csv - Use case: Export API data to spreadsheet-compatible format, generate downloadable CSV reports, or convert JSON query results for non-technical stakeholders. Request: ```json { "data": [ {"name": "Alice", "email": "alice@example.com", "role": "admin"}, {"name": "Bob", "email": "bob@example.com", "role": "user"} ], "delimiter": ",", "headers": true } ``` Response: ```json { "csv": "name,email,role\nAlice,alice@example.com,admin\nBob,bob@example.com,user", "rows": 2, "columns": 3 } ``` --- ## XML to JSON Convert XML data to a JSON object. - Endpoint: POST https://api.botoi.com/v1/xml/to-json - Use case: Parse XML API responses, convert SOAP payloads to JSON, transform RSS feeds, or migrate XML configuration files to JSON format. Request: ```json { "xml": "Developer ToolsBotoi0.00" } ``` Response: ```json { "data": { "catalog": { "book": { "@id": "1", "title": "Developer Tools", "author": "Botoi", "price": "0.00" } } } } ``` --- ## JWT Signing Generate and sign a JWT token with a given payload and secret. - Endpoint: POST https://api.botoi.com/v1/jwt/generate - Use case: Create signed tokens for testing authentication flows, generate temporary access tokens, or prototype JWT-based auth without spinning up a full auth server. Request: ```json { "payload": { "sub": "user_12345", "name": "Alice", "role": "admin" }, "secret": "your-256-bit-secret", "algorithm": "HS256", "expires_in": "1h" } ``` Supported algorithms: `HS256`, `HS384`, `HS512` Response: ```json { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyXzEyMzQ1IiwibmFtZSI6IkFsaWNlIiwicm9sZSI6ImFkbWluIiwiaWF0IjoxNzc0NjIwNjAwLCJleHAiOjE3NzQ2MjQyMDB9.abc123signature", "expires_at": "2026-03-24T15:30:00Z", "algorithm": "HS256" } ``` --- ## HMAC Generation Generate HMAC (Hash-based Message Authentication Code) signatures. - Endpoint: POST https://api.botoi.com/v1/hash/hmac - Use case: Sign webhook payloads, verify message integrity, create API request signatures, or validate Stripe/GitHub webhook deliveries. Request: ```json { "input": "webhook-payload-body", "key": "whsec_your_webhook_secret", "algorithm": "sha256", "encoding": "hex" } ``` Supported algorithms: `sha1`, `sha256`, `sha384`, `sha512` Supported encodings: `hex`, `base64` Response: ```json { "hmac": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2", "algorithm": "sha256", "encoding": "hex" } ``` --- ## TOTP Generation Generate a TOTP (Time-based One-Time Password) secret and current code. - Endpoint: POST https://api.botoi.com/v1/totp/generate - Use case: Set up two-factor authentication flows, generate QR codes for authenticator apps, or create TOTP secrets for user accounts. Request: ```json { "issuer": "Botoi", "account": "alice@example.com", "digits": 6, "period": 30, "algorithm": "SHA1" } ``` Response: ```json { "secret": "JBSWY3DPEHPK3PXP", "code": "482916", "period": 30, "digits": 6, "algorithm": "SHA1", "remaining_seconds": 18, "otpauth_uri": "otpauth://totp/Botoi:alice%40example.com?secret=JBSWY3DPEHPK3PXP&issuer=Botoi&algorithm=SHA1&digits=6&period=30" } ``` --- ## TOTP Validation Validate a TOTP code against a secret. - Endpoint: POST https://api.botoi.com/v1/totp/validate - Use case: Verify two-factor authentication codes submitted by users, check TOTP tokens during login, or test 2FA setup before enabling it. Request: ```json { "secret": "JBSWY3DPEHPK3PXP", "code": "482916", "digits": 6, "period": 30, "algorithm": "SHA1", "window": 1 } ``` The `window` parameter allows codes from adjacent time windows (1 = one period before and after). Response: ```json { "valid": true, "drift": 0 } ``` --- ## UUID v7 Generation Generate time-ordered UUID v7 identifiers. - Endpoint: POST https://api.botoi.com/v1/uuid/v7 - Use case: Create sortable, time-ordered unique IDs for database primary keys where chronological ordering matters, such as event logs, messages, or audit trails. Request: ```json { "count": 3 } ``` Response: ```json { "uuids": [ "01905a5c-4e20-7000-8a3b-1c2d3e4f5a6b", "01905a5c-4e20-7001-9b4c-2d3e4f5a6b7c", "01905a5c-4e20-7002-ac5d-3e4f5a6b7c8d" ], "version": 7, "count": 3 } ``` --- ## Timestamp Conversion Convert between Unix timestamps, ISO 8601, and human-readable date formats. - Endpoint: POST https://api.botoi.com/v1/timestamp/convert - Use case: Convert epoch timestamps from APIs or databases to readable dates, parse ISO 8601 strings to Unix time, or normalize date formats across systems. Request: ```json { "timestamp": 1774620600, "from": "unix", "to": "iso8601", "timezone": "America/New_York" } ``` Supported formats for `from`/`to`: `unix`, `unix_ms`, `iso8601`, `rfc2822` Response: ```json { "input": 1774620600, "input_format": "unix", "output": "2026-03-24T10:30:00-04:00", "output_format": "iso8601", "timezone": "America/New_York", "unix": 1774620600, "unix_ms": 1774620600000, "iso8601": "2026-03-24T14:30:00Z", "rfc2822": "Tue, 24 Mar 2026 14:30:00 +0000", "relative": "today" } ``` --- ## Semver Comparison Compare two semantic version strings. - Endpoint: POST https://api.botoi.com/v1/semver/compare - Use case: Check if a dependency update is a breaking change, sort release versions, determine if a user's app version meets the minimum required version. Request: ```json { "version_a": "2.4.1", "version_b": "2.5.0" } ``` Response: ```json { "version_a": "2.4.1", "version_b": "2.5.0", "result": -1, "description": "2.4.1 is less than 2.5.0", "diff": "minor" } ``` The `result` is -1 (a < b), 0 (a == b), or 1 (a > b). The `diff` field shows the highest component that changed: `major`, `minor`, `patch`, or `pre-release`. --- ## Semver Validation Validate a version string against the SemVer 2.0 spec. - Endpoint: POST https://api.botoi.com/v1/semver/validate - Use case: Validate user-provided version strings, check pre-release tags, or enforce semantic versioning in CI/CD pipelines. Request: ```json { "version": "3.1.0-beta.2+build.456" } ``` Response: ```json { "version": "3.1.0-beta.2+build.456", "valid": true, "major": 3, "minor": 1, "patch": 0, "pre_release": "beta.2", "build_metadata": "build.456" } ``` --- ## YAML to JSON Convert YAML to JSON format. - Endpoint: POST https://api.botoi.com/v1/yaml/to-json - Use case: Convert Kubernetes manifests, Docker Compose files, or CI/CD configs from YAML to JSON for programmatic processing. Request: ```json { "yaml": "name: botoi\nversion: 1.0.0\nservices:\n - api\n - tools" } ``` Response: ```json { "data": { "name": "botoi", "version": "1.0.0", "services": ["api", "tools"] } } ``` --- ## JSON to YAML Convert JSON to YAML format. - Endpoint: POST https://api.botoi.com/v1/yaml/to-yaml - Use case: Generate Kubernetes configs from JSON templates, convert API responses to YAML for human editing, or create configuration files from structured data. Request: ```json { "data": { "name": "botoi", "version": "1.0.0", "services": ["api", "tools"] }, "indent": 2 } ``` Response: ```json { "yaml": "name: botoi\nversion: 1.0.0\nservices:\n - api\n - tools\n" } ``` --- ## Math Evaluation Evaluate a mathematical expression and return the result. - Endpoint: POST https://api.botoi.com/v1/math/evaluate - Use case: Build calculator features, evaluate user-submitted formulas, compute pricing calculations server-side, or validate mathematical expressions. Request: ```json { "expression": "(12 + 8) * 3 / 4 + sqrt(144)", "precision": 4 } ``` Supported operations: basic arithmetic (`+`, `-`, `*`, `/`, `%`), exponentiation (`^`), parentheses, functions (`sqrt`, `abs`, `ceil`, `floor`, `round`, `sin`, `cos`, `tan`, `log`, `log10`, `min`, `max`). Response: ```json { "expression": "(12 + 8) * 3 / 4 + sqrt(144)", "result": 27, "precision": 4 } ``` --- ## Unit Conversion Convert values between measurement units. - Endpoint: POST https://api.botoi.com/v1/units/convert - Use case: Build unit converters, convert between metric and imperial in e-commerce, process scientific data, or normalize measurements from different sources. Request: ```json { "value": 72, "from": "fahrenheit", "to": "celsius", "category": "temperature" } ``` Supported categories: `temperature`, `length`, `weight`, `volume`, `area`, `speed`, `data`, `time`, `pressure` Response: ```json { "value": 72, "from": "fahrenheit", "to": "celsius", "result": 22.2222, "category": "temperature", "formula": "(72 - 32) * 5/9" } ``` --- ## Placeholder Images Generate placeholder images with custom dimensions, colors, and text. - Endpoint: POST https://api.botoi.com/v1/placeholder - Use case: Create placeholder images for wireframes, fill empty image slots in development, generate test images for responsive layout testing. Request: ```json { "width": 600, "height": 400, "background": "#e2e8f0", "text_color": "#334155", "text": "600x400", "format": "png" } ``` Supported formats: `png`, `svg` Response: Binary image data with appropriate Content-Type header (`image/png` or `image/svg+xml`). --- ## Avatar Generation Generate unique avatar images from a name, email, or any string identifier. - Endpoint: POST https://api.botoi.com/v1/avatar - Use case: Generate default profile pictures for users, create consistent avatars from identifiers, or build user directories without requiring photo uploads. Request: ```json { "identifier": "alice@example.com", "size": 200, "style": "initials", "background": "#3EC997", "text_color": "#ffffff", "format": "png" } ``` Supported styles: `initials`, `geometric`, `pixel` Response: Binary image data with Content-Type: `image/png`. --- ## Favicon Extraction Extract favicon URLs from any website. - Endpoint: POST https://api.botoi.com/v1/favicon - Use case: Build bookmark managers, display favicons in link previews, enrich URL metadata, or create browser-like tab displays in web apps. Request: ```json { "url": "https://github.com" } ``` Response: ```json { "url": "https://github.com", "favicons": [ {"url": "https://github.githubassets.com/favicons/favicon.svg", "type": "image/svg+xml", "size": null}, {"url": "https://github.com/favicon.ico", "type": "image/x-icon", "size": "32x32"} ], "best": "https://github.githubassets.com/favicons/favicon.svg" } ``` --- ## Barcode Generation Generate barcodes in various formats (Code 128, EAN-13, UPC-A, etc.). - Endpoint: POST https://api.botoi.com/v1/barcode - Use case: Generate product barcodes for inventory systems, create shipping labels, print barcode labels for asset tracking, or embed barcodes in invoices. Request: ```json { "data": "123456789012", "format": "ean13", "width": 300, "height": 100, "output": "png" } ``` Supported barcode formats: `code128`, `ean13`, `ean8`, `upca`, `code39`, `itf14`, `codabar` Supported output formats: `png`, `svg` Response: Binary image data with appropriate Content-Type header. --- ## Credit Card Validation Validate credit card numbers using the Luhn algorithm with card type detection. - Endpoint: POST https://api.botoi.com/v1/validate/credit-card - Use case: Validate card numbers in checkout forms before sending to payment processors, detect card type for displaying the correct brand icon, or screen for obviously invalid numbers. Request: ```json { "number": "4532015112830366" } ``` Response: ```json { "number": "4532015112830366", "valid": true, "card_type": "visa", "card_name": "Visa", "length": 16, "luhn_valid": true } ``` --- ## IBAN Validation Validate International Bank Account Numbers (IBANs) with country-specific checks. - Endpoint: POST https://api.botoi.com/v1/validate/iban - Use case: Validate bank account numbers in payment forms, verify IBAN format before initiating wire transfers, or enrich financial records with country and bank data. Request: ```json { "iban": "DE89370400440532013000" } ``` Response: ```json { "iban": "DE89370400440532013000", "valid": true, "country": "DE", "country_name": "Germany", "check_digits": "89", "bban": "370400440532013000", "bank_code": "37040044", "formatted": "DE89 3704 0044 0532 0130 00" } ``` --- ## VAT Validation Validate European VAT identification numbers. - Endpoint: POST https://api.botoi.com/v1/validate/vat - Use case: Verify VAT numbers during B2B checkout for tax exemption, validate supplier VAT IDs for compliance, or enrich business records with VAT details. Request: ```json { "vat_number": "DE123456789" } ``` Response: ```json { "vat_number": "DE123456789", "valid": true, "country": "DE", "country_name": "Germany", "format_valid": true, "company_name": "Example GmbH", "company_address": "Musterstrasse 1, 10115 Berlin" } ``` --- ## AES Encryption Encrypt plaintext using AES-256-GCM. - Endpoint: POST https://api.botoi.com/v1/encrypt/encrypt - Use case: Encrypt sensitive data before storage, protect configuration values, or encrypt payloads for secure transport between services. Request: ```json { "plaintext": "sensitive-api-key-value", "password": "your-strong-passphrase" } ``` Response: ```json { "ciphertext": "aes256gcm:iv:salt:encrypted_base64_data", "algorithm": "AES-256-GCM", "encoding": "base64" } ``` --- ## AES Decryption Decrypt AES-256-GCM encrypted data. - Endpoint: POST https://api.botoi.com/v1/encrypt/decrypt - Use case: Decrypt previously encrypted values, retrieve original data from encrypted storage, or decrypt payloads received from other services. Request: ```json { "ciphertext": "aes256gcm:iv:salt:encrypted_base64_data", "password": "your-strong-passphrase" } ``` Response: ```json { "plaintext": "sensitive-api-key-value", "algorithm": "AES-256-GCM" } ``` --- ## OTP Generation Generate numeric one-time passwords for verification flows. - Endpoint: POST https://api.botoi.com/v1/otp/generate - Use case: Generate OTP codes for email or SMS verification, create temporary access codes for password resets, or build phone number verification flows. Request: ```json { "length": 6, "expires_in": 300, "type": "numeric" } ``` Supported types: `numeric`, `alphanumeric` Response: ```json { "otp": "847291", "type": "numeric", "length": 6, "expires_in": 300, "expires_at": "2026-03-24T14:35:00Z" } ``` --- ## POST /v1/token/count Count the number of tokens in a text string for a given LLM model. curl -X POST https://api.botoi.com/v1/token/count \ -H "Content-Type: application/json" \ -d '{"text": "The quick brown fox jumps over the lazy dog.", "model": "gpt-4"}' --- ## POST /v1/token/truncate Truncate a text string to fit within a token limit for a given LLM model. curl -X POST https://api.botoi.com/v1/token/truncate \ -H "Content-Type: application/json" \ -d '{"text": "The quick brown fox jumps over the lazy dog.", "max_tokens": 5, "model": "gpt-4"}' --- ## POST /v1/code/format Format source code using language-specific formatters. curl -X POST https://api.botoi.com/v1/code/format \ -H "Content-Type: application/json" \ -d '{"code": "function hello(){return \"world\"}", "language": "javascript"}' --- ## POST /v1/code/detect Detect the programming language of a code snippet. curl -X POST https://api.botoi.com/v1/code/detect \ -H "Content-Type: application/json" \ -d '{"code": "def greet(name):\n return f\"Hello, {name}\""}' --- ## POST /v1/code/highlight Syntax highlight a code snippet and return HTML with inline styles. curl -X POST https://api.botoi.com/v1/code/highlight \ -H "Content-Type: application/json" \ -d '{"code": "const x = 42;", "language": "javascript", "theme": "github"}' --- ## POST /v1/sql/format Format a SQL query with consistent indentation and casing. curl -X POST https://api.botoi.com/v1/sql/format \ -H "Content-Type: application/json" \ -d '{"sql": "SELECT id,name FROM users WHERE active=1 ORDER BY name", "dialect": "postgresql"}' --- ## POST /v1/sql/parse Parse a SQL query into an abstract syntax tree (AST). curl -X POST https://api.botoi.com/v1/sql/parse \ -H "Content-Type: application/json" \ -d '{"sql": "SELECT id, name FROM users WHERE active = 1"}' --- ## POST /v1/minify/js Minify JavaScript source code, removing whitespace and comments. curl -X POST https://api.botoi.com/v1/minify/js \ -H "Content-Type: application/json" \ -d '{"code": "function greet(name) {\n return \"Hello, \" + name + \"!\";\n}"}' --- ## POST /v1/minify/css Minify CSS source code, removing whitespace and comments. curl -X POST https://api.botoi.com/v1/minify/css \ -H "Content-Type: application/json" \ -d '{"code": "body {\n margin: 0;\n padding: 0;\n background: #fff;\n}"}' --- ## POST /v1/minify/html Minify HTML markup, removing whitespace and comments. curl -X POST https://api.botoi.com/v1/minify/html \ -H "Content-Type: application/json" \ -d '{"code": "\n \n

Hello World

\n \n"}' --- ## POST /v1/schema/validate Validate a JSON object against a JSON Schema definition. curl -X POST https://api.botoi.com/v1/schema/validate \ -H "Content-Type: application/json" \ -d '{"schema": {"type": "object", "properties": {"name": {"type": "string"}}, "required": ["name"]}, "data": {"name": "Alice"}}' --- ## POST /v1/schema/openapi-validate Validate an OpenAPI 3.x or Swagger 2.x specification for structural correctness. curl -X POST https://api.botoi.com/v1/schema/openapi-validate \ -H "Content-Type: application/json" \ -d '{"spec": {"openapi": "3.1.0", "info": {"title": "My API", "version": "1.0.0"}, "paths": {}}}' --- ## POST /v1/schema/json-to-typescript Generate TypeScript interface definitions from a JSON example. curl -X POST https://api.botoi.com/v1/schema/json-to-typescript \ -H "Content-Type: application/json" \ -d '{"json": {"id": 1, "name": "Alice", "active": true}}' --- ## POST /v1/schema/json-to-zod Generate a Zod schema from a JSON example. curl -X POST https://api.botoi.com/v1/schema/json-to-zod \ -H "Content-Type: application/json" \ -d '{"json": {"id": 1, "name": "Alice", "active": true}}' --- ## POST /v1/schema/json-to-jsonschema Generate a JSON Schema (draft-07) from a JSON example. curl -X POST https://api.botoi.com/v1/schema/json-to-jsonschema \ -H "Content-Type: application/json" \ -d '{"json": {"id": 1, "name": "Alice", "active": true}}' --- ## POST /v1/json-extra/flatten Flatten a deeply nested JSON object into dot-notation keys. curl -X POST https://api.botoi.com/v1/json-extra/flatten \ -H "Content-Type: application/json" \ -d '{"json": {"user": {"name": "Alice", "address": {"city": "Berlin"}}}}' --- ## POST /v1/json-extra/unflatten Convert dot-notation keys back into a nested JSON object. curl -X POST https://api.botoi.com/v1/json-extra/unflatten \ -H "Content-Type: application/json" \ -d '{"json": {"user.name": "Alice", "user.address.city": "Berlin"}}' --- ## POST /v1/mock/generate Generate realistic mock data records from a JSON Schema. curl -X POST https://api.botoi.com/v1/mock/generate \ -H "Content-Type: application/json" \ -d '{"schema": {"type": "object", "properties": {"id": {"type": "integer"}, "name": {"type": "string"}, "email": {"type": "string", "format": "email"}}}, "count": 3}' --- ## POST /v1/date/ Parse a natural language date expression into a structured datetime object. curl -X POST https://api.botoi.com/v1/date/ \ -H "Content-Type: application/json" \ -d '{"expression": "next Monday at 9am", "timezone": "America/New_York"}' --- ## POST /v1/svg/optimize Optimize and minify SVG markup using SVGO-style transformations. curl -X POST https://api.botoi.com/v1/svg/optimize \ -H "Content-Type: application/json" \ -d '{"svg": ""}' --- ## POST /v1/text/similarity Compute a similarity score between two text strings using cosine or Jaccard distance. curl -X POST https://api.botoi.com/v1/text/similarity \ -H "Content-Type: application/json" \ -d '{"text_a": "The quick brown fox", "text_b": "The fast brown fox"}' --- ## POST /v1/text/readability Compute Flesch-Kincaid and other readability scores for a block of text. curl -X POST https://api.botoi.com/v1/text/readability \ -H "Content-Type: application/json" \ -d '{"text": "The quick brown fox jumps over the lazy dog. Pack my box with five dozen liquor jugs."}' --- ## POST /v1/regex/generate Generate a regular expression pattern from a plain English description. curl -X POST https://api.botoi.com/v1/regex/generate \ -H "Content-Type: application/json" \ -d '{"description": "US phone number with dashes"}' --- ## POST /v1/number/spell Convert a number to its word representation. curl -X POST https://api.botoi.com/v1/number/spell \ -H "Content-Type: application/json" \ -d '{"number": 1042, "locale": "en"}' --- ## POST /v1/html-to-markdown/ Convert HTML markup to Markdown format. curl -X POST https://api.botoi.com/v1/html-to-markdown/ \ -H "Content-Type: application/json" \ -d '{"html": "

Hello

This is bold.

"}' --- ## POST /v1/pii/detect Detect personally identifiable information (PII) in a block of text, including names, emails, phone numbers, and SSNs. curl -X POST https://api.botoi.com/v1/pii/detect \ -H "Content-Type: application/json" \ -d '{"text": "Contact John at john@example.com or 555-867-5309."}' --- ## POST /v1/emoji/search Search for emojis by keyword and return matching results with codepoints and categories. curl -X POST https://api.botoi.com/v1/emoji/search \ -H "Content-Type: application/json" \ -d '{"query": "rocket"}' --- ## POST /v1/ical/parse Parse an iCal (ICS) calendar string into structured event data. curl -X POST https://api.botoi.com/v1/ical/parse \ -H "Content-Type: application/json" \ -d '{"ical": "BEGIN:VCALENDAR\nVERSION:2.0\nBEGIN:VEVENT\nSUMMARY:Team Standup\nDTSTART:20260401T090000Z\nDTEND:20260401T093000Z\nEND:VEVENT\nEND:VCALENDAR"}' --- ## POST /v1/ical/generate Generate a valid iCal (ICS) event string from structured event data. curl -X POST https://api.botoi.com/v1/ical/generate \ -H "Content-Type: application/json" \ -d '{"title": "Team Standup", "start": "2026-04-01T09:00:00Z", "end": "2026-04-01T09:30:00Z", "description": "Daily sync", "location": "Zoom"}' --- ## POST /v1/metatag/generate Generate HTML meta tags for SEO, Open Graph, and Twitter Card from page metadata. curl -X POST https://api.botoi.com/v1/metatag/generate \ -H "Content-Type: application/json" \ -d '{"title": "Botoi API", "description": "Free developer utility APIs", "url": "https://botoi.com", "image": "https://botoi.com/og.png"}' --- ## POST /v1/domain/availability Check if a domain name is available for registration. curl -X POST https://api.botoi.com/v1/domain/availability \ -H "Content-Type: application/json" \ -d '{"domain": "mybrand.com"}' --- ## POST /v1/ssl-cert/certificate Retrieve full SSL certificate details for a domain, including issuer, validity, and SANs. curl -X POST https://api.botoi.com/v1/ssl-cert/certificate \ -H "Content-Type: application/json" \ -d '{"domain": "github.com"}' --- ## POST /v1/mx/check Check MX records for a domain to verify email delivery configuration. curl -X POST https://api.botoi.com/v1/mx/check \ -H "Content-Type: application/json" \ -d '{"domain": "gmail.com"}' --- ## POST /v1/tech-detect/ Detect technologies, frameworks, and services used by a website. curl -X POST https://api.botoi.com/v1/tech-detect/ \ -H "Content-Type: application/json" \ -d '{"url": "https://github.com"}' --- ## POST /v1/robots/ Fetch and parse a site's robots.txt file, returning crawl rules and sitemap references. curl -X POST https://api.botoi.com/v1/robots/ \ -H "Content-Type: application/json" \ -d '{"url": "https://botoi.com/robots.txt"}' --- ## POST /v1/sitemap/ Fetch and parse a sitemap.xml file, returning the full list of URLs and their metadata. curl -X POST https://api.botoi.com/v1/sitemap/ \ -H "Content-Type: application/json" \ -d '{"url": "https://botoi.com/sitemap.xml"}' --- ## POST /v1/rss/parse Fetch and parse an RSS or Atom feed, returning structured entries. curl -X POST https://api.botoi.com/v1/rss/parse \ -H "Content-Type: application/json" \ -d '{"url": "https://feeds.feedburner.com/example"}' --- ## POST /v1/link/expand Expand a shortened URL (bit.ly, t.co, etc.) to reveal its final destination. curl -X POST https://api.botoi.com/v1/link/expand \ -H "Content-Type: application/json" \ -d '{"url": "https://bit.ly/example"}' --- ## POST /v1/link/check Check whether a URL is alive and reachable, returning the status code and response time. curl -X POST https://api.botoi.com/v1/link/check \ -H "Content-Type: application/json" \ -d '{"url": "https://botoi.com"}' --- ## POST /v1/email-mx/verify Perform a deep email verification by checking the address format, domain MX records, and mailbox existence via SMTP handshake. curl -X POST https://api.botoi.com/v1/email-mx/verify \ -H "Content-Type: application/json" \ -d '{"email": "user@gmail.com"}' --- ## POST /v1/site/check Check site performance, response time, status code, and redirect chain for a URL. curl -X POST https://api.botoi.com/v1/site/check \ -H "Content-Type: application/json" \ -d '{"url": "https://botoi.com"}' --- ## POST /v1/ip-whois/lookup Look up WHOIS ownership and network registration data for an IP address. curl -X POST https://api.botoi.com/v1/ip-whois/lookup \ -H "Content-Type: application/json" \ -d '{"ip": "8.8.8.8"}' --- ## POST /v1/dns-security/spf-check Look up and parse the SPF record for a domain to verify email sender authorization. curl -X POST https://api.botoi.com/v1/dns-security/spf-check \ -H "Content-Type: application/json" \ -d '{"domain": "gmail.com"}' --- ## POST /v1/dns-security/dmarc-check Look up and parse the DMARC policy record for a domain. curl -X POST https://api.botoi.com/v1/dns-security/dmarc-check \ -H "Content-Type: application/json" \ -d '{"domain": "gmail.com"}' --- ## POST /v1/dns-security/dkim-check Look up the DKIM public key record for a domain and selector. curl -X POST https://api.botoi.com/v1/dns-security/dkim-check \ -H "Content-Type: application/json" \ -d '{"domain": "gmail.com", "selector": "google"}' --- ## POST /v1/currency/convert Convert an amount from one currency to another using live exchange rates. curl -X POST https://api.botoi.com/v1/currency/convert \ -H "Content-Type: application/json" \ -d '{"amount": 100, "from": "USD", "to": "EUR"}' --- ## POST /v1/currency/rates Get live exchange rates for a base currency against all supported currencies. curl -X POST https://api.botoi.com/v1/currency/rates \ -H "Content-Type: application/json" \ -d '{"base": "USD"}' --- ## POST /v1/vpn-detect/ Detect whether an IP address belongs to a VPN, proxy, Tor exit node, or datacenter. curl -X POST https://api.botoi.com/v1/vpn-detect/ \ -H "Content-Type: application/json" \ -d '{"ip": "8.8.8.8"}' --- ## POST /v1/disposable-email/check Check whether an email address uses a known disposable or temporary email domain. curl -X POST https://api.botoi.com/v1/disposable-email/check \ -H "Content-Type: application/json" \ -d '{"email": "test@mailinator.com"}' --- ## POST /v1/country/lookup Get detailed data for a country by ISO code or name, including currency, languages, and flag. curl -X POST https://api.botoi.com/v1/country/lookup \ -H "Content-Type: application/json" \ -d '{"country": "DE"}' --- ## POST /v1/currency-list/list List all supported currencies with their names, symbols, and ISO codes. curl -X POST https://api.botoi.com/v1/currency-list/list \ -H "Content-Type: application/json" \ -d '{}' --- ## POST /v1/pdf/from-html Convert an HTML string to a PDF document. curl -X POST https://api.botoi.com/v1/pdf/from-html \ -H "Content-Type: application/json" \ -d '{"html": "

Hello World

Generated by Botoi API.

"}' --- ## POST /v1/pdf/from-markdown Convert a Markdown string to a PDF document. curl -X POST https://api.botoi.com/v1/pdf/from-markdown \ -H "Content-Type: application/json" \ -d '{"markdown": "# Hello World\n\nGenerated by Botoi API."}' --- ## POST /v1/screenshot/capture Render an HTML string to a screenshot image (PNG). curl -X POST https://api.botoi.com/v1/screenshot/capture \ -H "Content-Type: application/json" \ -d '{"html": "

Hello Botoi

", "width": 1200, "height": 630}' --- ## POST /v1/image/metadata Extract metadata from an image URL, including dimensions, format, and EXIF data. curl -X POST https://api.botoi.com/v1/image/metadata \ -H "Content-Type: application/json" \ -d '{"url": "https://botoi.com/og.png"}' --- ## POST /v1/webhook/inbox/create Create a temporary webhook receiver inbox to capture and inspect incoming HTTP requests. curl -X POST https://api.botoi.com/v1/webhook/inbox/create \ -H "Content-Type: application/json" \ -d '{"label": "my-test-inbox", "expires_in": 3600}' --- ## POST /v1/short-url/create Create a shortened URL with an optional custom slug and expiration. curl -X POST https://api.botoi.com/v1/short-url/create \ -H "Content-Type: application/json" \ -d '{"url": "https://botoi.com/tools/json-formatter", "slug": "json"}' --- ## POST /v1/paste/create Create a shareable code paste with optional syntax highlighting and expiration. curl -X POST https://api.botoi.com/v1/paste/create \ -H "Content-Type: application/json" \ -d '{"content": "console.log(\"Hello from Botoi\");", "language": "javascript", "expires_in": 86400}' --- ## POST /v1/geo/distance Calculate the geodesic distance between two lat/lon coordinate pairs. curl -X POST https://api.botoi.com/v1/geo/distance \ -H "Content-Type: application/json" \ -d '{"from": {"lat": 37.7749, "lon": -122.4194}, "to": {"lat": 40.7128, "lon": -74.006}, "unit": "km"}' --- ## POST /v1/geo/geocode Convert a street address or place name to geographic coordinates (lat/lon). curl -X POST https://api.botoi.com/v1/geo/geocode \ -H "Content-Type: application/json" \ -d '{"address": "1600 Amphitheatre Parkway, Mountain View, CA"}' --- ## POST /v1/geo/reverse Convert geographic coordinates (lat/lon) to a human-readable address. curl -X POST https://api.botoi.com/v1/geo/reverse \ -H "Content-Type: application/json" \ -d '{"lat": 37.422, "lon": -122.084}' --- ## POST /v1/uptime/check Check whether a URL is up and measure its response time and status code. curl -X POST https://api.botoi.com/v1/uptime/check \ -H "Content-Type: application/json" \ -d '{"url": "https://botoi.com"}' --- ## POST /v1/ip-blocklist/check Check whether an IP address appears on known spam or abuse blocklists. curl -X POST https://api.botoi.com/v1/ip-blocklist/check \ -H "Content-Type: application/json" \ -d '{"ip": "1.2.3.4"}' --- ## POST /v1/abuse-email/check Check whether an email address or domain is flagged in abuse or spam databases. curl -X POST https://api.botoi.com/v1/abuse-email/check \ -H "Content-Type: application/json" \ -d '{"email": "abuse@example.com"}' --- ## API endpoint pages Each endpoint has a dedicated page on botoi.com with a live playground, code examples, use cases, and FAQ. ### API hub - [Developer Tools API](https://botoi.com/api/): All API endpoints with live playgrounds ### Lookup & Enrichment - [Lookup & Enrichment APIs](https://botoi.com/api/lookup/): IP geolocation, email validation, DNS records, WHOIS, SSL checks, phone validation, and domain intelligence APIs - [IP Geolocation API](https://botoi.com/api/lookup/ip-lookup/): Geolocate any IP address for free. Returns country, city, coordinates, timezone, and ASN data powered by Cloudflare edge nodes in under 50ms. - [IP CIDR Range Check API](https://botoi.com/api/lookup/ip-in-range/): Check if an IP address falls within a CIDR range for free. Returns the network address, broadcast address, prefix length, and total host count instantly. - [Reverse DNS Lookup API](https://botoi.com/api/lookup/ip-reverse/): Perform reverse DNS lookups for free. Resolve any IP address to its PTR hostname record with query time included. - [Bulk IP Geolocation API](https://botoi.com/api/lookup/ip-bulk/): Geolocate multiple IP addresses in a single API call for free. Returns country, city, and coordinates for each IP in the batch. - [Email Validation API](https://botoi.com/api/lookup/email-validate/): Validate email addresses for free in one API call. Checks format, MX records, disposable domains, free providers, role-based addresses, and suggests typo fixes. - [User Agent Parser API](https://botoi.com/api/lookup/useragent-parse/): Parse any user agent string into browser, OS, and device details for free. Detects bots, crawlers, and headless browsers automatically. - [Timezone API](https://botoi.com/api/lookup/timezone-get/): Get the current time in any IANA timezone for free. Returns UTC offset, abbreviation, DST status, and unix timestamp. - [Timezone Converter API](https://botoi.com/api/lookup/timezone-convert/): Convert time between any two IANA timezones for free. Returns formatted datetimes, abbreviations, and the offset difference. - [DNS Lookup API](https://botoi.com/api/lookup/dns-lookup/): Query DNS records for any domain for free. Supports A, AAAA, MX, TXT, CNAME, NS, SOA, SRV, CAA, and PTR record types. - [DNS Batch Lookup API](https://botoi.com/api/lookup/dns-batch/): Query multiple DNS record types for a domain in one API call for free. Returns A, AAAA, MX, TXT, and NS records in parallel. - [DNS Propagation Check API](https://botoi.com/api/lookup/dns-propagation/): Check DNS propagation across Google, Cloudflare, and Quad9 resolvers for free. Verify if your DNS changes have propagated worldwide. - [URL Metadata API](https://botoi.com/api/lookup/url-metadata/): Extract metadata and Open Graph tags from any URL for free. Returns title, description, OG tags, Twitter Card data, favicon, and canonical URL. - [WHOIS Lookup API](https://botoi.com/api/lookup/whois-lookup/): Look up WHOIS and RDAP data for any domain for free. Returns registrar, creation date, expiry date, status codes, and nameservers. - [SSL Check API](https://botoi.com/api/lookup/ssl-check/): Check SSL/HTTPS support and security headers for any domain for free. Scans HSTS, CSP, X-Frame-Options, and Referrer-Policy headers. - [HTTP Headers API](https://botoi.com/api/lookup/headers-inspect/): Inspect HTTP response headers of any URL for free. Debug proxies, CDNs, and middleware by viewing all headers returned in the response. - [Phone Validation API](https://botoi.com/api/lookup/phone-validate/): Validate and parse phone numbers for free. Returns E.164 format, national format, country code, and country name. - [Company Lookup API](https://botoi.com/api/lookup/company-lookup/): Look up company info from a domain for free. Returns page title, meta description, Open Graph data, and favicon URL. - [Address Validation API](https://botoi.com/api/lookup/address-validate/): Validate and parse any freeform address into structured components for free. Returns street, city, state, postal code, country, coordinates, and confidence score. - [Address Autocomplete API](https://botoi.com/api/lookup/address-autocomplete/): Get address autocomplete suggestions as users type for free. Returns up to 10 structured address suggestions with coordinates for search-as-you-type forms. - [DNS Monitoring API](https://botoi.com/api/lookup/dns-monitor-check/): Monitor DNS record changes for any domain for free. Compares current records against the previous snapshot and detects additions, removals, and modifications. - [SSL Certificate Expiry API](https://botoi.com/api/lookup/ssl-cert-expiry/): Check SSL certificate expiry dates for any domain for free. Returns issuer, valid dates, days remaining, and whether the certificate is expired or expiring soon. - [Accessibility Check API](https://botoi.com/api/lookup/accessibility-check/): Run 10 accessibility checks on any webpage for free. Detects missing alt text, heading order violations, missing form labels, and more. Returns a score and issue list. - [Disposable Email List API](https://botoi.com/api/lookup/disposable-email-list/): Get the full list of 700+ known disposable email domains for free. Filter by keyword. Use for client-side email validation or bulk database cleanup. - [Domain Report API](https://botoi.com/api/lookup/domain-report/): Get a full domain report with DNS records, WHOIS data, SSL certificate details, security headers, and technology stack in a single API call. - [Email Security Report API](https://botoi.com/api/lookup/email-security-report/): Audit email security for any domain. Returns SPF, DMARC, and DKIM records with a letter grade, score, and actionable recommendations. - [Social Preview API](https://botoi.com/api/lookup/social-preview-extract/): Extract Open Graph and Twitter Card metadata from any URL. Returns title, description, image, and card type for building link preview cards. - [IP Intelligence API](https://botoi.com/api/lookup/ip-intelligence/): Profile any IP address with geolocation, ASN, reverse DNS, VPN detection, TLS fingerprint, and connection metadata in a single call. - [Site Performance API](https://botoi.com/api/lookup/site-performance/): Measure website performance with TTFB, total load time, compression detection, redirect chain tracing, and server identification in one call. - [DNS Compare API](https://botoi.com/api/lookup/dns-compare/): Compare DNS records across Google, Cloudflare, Quad9, OpenDNS, and Authoritative resolvers. Detect propagation delays and inconsistencies. - [Redirect Trace API](https://botoi.com/api/lookup/redirect-trace/): Trace the full HTTP redirect chain for any URL. Returns every hop with status code, latency, server header, and final destination. - [TLS Fingerprint API](https://botoi.com/api/lookup/tls-fingerprint/): Get your TLS fingerprint including JA3 and JA4 hashes, cipher suite, TLS version, HTTP protocol, and bot score from Cloudflare edge. - [ASN Lookup API](https://botoi.com/api/lookup/asn-lookup/): Look up any Autonomous System Number to get the organization name, country, IP range, registration date, and abuse contact via RDAP. - [Carbon Estimate API](https://botoi.com/api/lookup/carbon-estimate/): Estimate the CO2 emissions per page view for any URL. Returns grams of CO2, energy usage, and a percentile ranking against the median web page. - [Weather API](https://botoi.com/api/lookup/weather-current/): Get current weather conditions for any city or lat/lng pair. Returns temperature, humidity, wind speed, precipitation, cloud cover, and weather description. - [Air Quality API](https://botoi.com/api/lookup/air-quality-check/): Check air quality index (AQI) and pollutant concentrations for any location. Returns US and European AQI, PM2.5, PM10, CO, NO2, SO2, and ozone levels. - [Elevation API](https://botoi.com/api/lookup/elevation-lookup/): Look up the elevation (altitude above sea level) for any latitude/longitude pair or batch of locations. Returns elevation in meters. - [On Water API](https://botoi.com/api/lookup/on-water-check/): Determine whether a latitude/longitude pair is over water or land. Returns a boolean water field for fast geospatial classification. - [Page Rank API](https://botoi.com/api/lookup/page-rank-check/): Check the page rank score and global ranking for any domain. Returns a 0-10 decimal rank, global rank position, and HTTP status code. - [Public Holidays API](https://botoi.com/api/lookup/holidays-list/): Get a list of public holidays for any country and year. Returns holiday dates, names, local names, and types for 100+ countries. - [BIN Lookup API](https://botoi.com/api/lookup/bin-lookup/): Look up a bank identification number (BIN/IIN) to get card scheme, type, brand, issuing bank, country, and prepaid status. - [Domain Search API](https://botoi.com/api/lookup/domain-search/): Search for registered domains matching a keyword. Returns domain names, creation dates, update dates, and availability status across TLDs. - [NPM Package Info API](https://botoi.com/api/lookup/npm-info/): Look up any npm package to get version, description, license, repository URL, dependency count, keywords, and publication dates. - [Crypto Price API](https://botoi.com/api/lookup/crypto-price/): Get live cryptocurrency prices, market caps, 24h volume, and price changes in any fiat currency. Supports Bitcoin, Ethereum, and thousands of coins. - [Crypto Search API](https://botoi.com/api/lookup/crypto-search/): Search for cryptocurrencies by name or ticker symbol. Returns coin ID, full name, symbol, and market cap rank for building autocomplete and coin pickers. - [Age Estimation API](https://botoi.com/api/lookup/age-estimate/): Estimate the likely age of a person based on their first name. Returns predicted age, sample count, and optional country-specific results. - [Gender Detection API](https://botoi.com/api/lookup/gender-estimate/): Predict the likely gender of a person from their first name. Returns gender, probability score, sample count, and optional country-specific results. - [Nationality Prediction API](https://botoi.com/api/lookup/nationality-estimate/): Predict the most likely country of origin for a person based on their name. Returns ranked country probabilities using ISO country codes. ### Text & Data - [Text & Data APIs](https://botoi.com/api/text-data/): Base64, JSON, Markdown, CSV, XML conversion, regex testing, text analysis, and HTML processing APIs - [Base64 Encode API](https://botoi.com/api/text-data/base64-encode/): Encode any UTF-8 string to Base64 or URL-safe Base64 with a single API call. - [Base64 Decode API](https://botoi.com/api/text-data/base64-decode/): Decode Base64 or URL-safe Base64 back to a UTF-8 string. - [JSON Format API](https://botoi.com/api/text-data/json-format/): Pretty-print and format JSON with configurable indentation. - [JSON Minify API](https://botoi.com/api/text-data/json-minify/): Remove all whitespace from JSON to reduce payload size. - [JSON Validate API](https://botoi.com/api/text-data/json-validate/): Validate JSON syntax and get detailed error messages with line and column numbers. - [JSON Diff API](https://botoi.com/api/text-data/json-diff/): Compare two JSON documents and get a detailed diff showing additions, removals, and changes. - [Markdown to HTML API](https://botoi.com/api/text-data/markdown-to-html/): Convert Markdown to sanitized HTML with a single API call. Supports GFM tables, code blocks, and task lists. - [Markdown to Text API](https://botoi.com/api/text-data/markdown-to-text/): Strip all Markdown formatting and return plain text. Useful for search indexing, summaries, and notifications. - [HTML to Text API](https://botoi.com/api/text-data/html-to-text/): Convert HTML to clean plain text while preserving document structure. - [Lorem Ipsum API](https://botoi.com/api/text-data/lorem-generate/): Generate lorem ipsum placeholder text as words, sentences, or paragraphs. - [Regex Test API](https://botoi.com/api/text-data/regex-test/): Test a regex pattern against any string and get all matches with positions. - [Regex Replace API](https://botoi.com/api/text-data/regex-replace/): Find and replace text using regex patterns with capture group support. - [Text Stats API](https://botoi.com/api/text-data/text-stats/): Count words, characters, sentences, and paragraphs. Estimate reading time. - [Slugify API](https://botoi.com/api/text-data/text-slugify/): Convert any text into a clean, URL-safe slug. Handles Unicode, accented characters, and special symbols. - [Text Truncate API](https://botoi.com/api/text-data/text-truncate/): Truncate text at word boundaries with a custom suffix. - [Extract URLs API](https://botoi.com/api/text-data/text-extract-urls/): Extract all URLs from any text block. Detects http, https, and protocol-relative URLs. - [Extract Emails API](https://botoi.com/api/text-data/text-extract-emails/): Extract all email addresses from any text block. Returns deduplicated results with count. - [Language Detection API](https://botoi.com/api/text-data/text-language/): Detect the language of any text with confidence scores. Supports 50+ languages. - [Text Case Converter API](https://botoi.com/api/text-data/text-case/): Convert text between camelCase, snake_case, PascalCase, kebab-case, and more. - [HTML Sanitize API](https://botoi.com/api/text-data/html-sanitize/): Sanitize HTML by removing script tags, event handlers, and dangerous attributes. - [CSV to JSON API](https://botoi.com/api/text-data/csv-to-json/): Convert CSV data to a JSON array with automatic header detection. - [JSON to CSV API](https://botoi.com/api/text-data/json-to-csv/): Convert a JSON array to CSV with automatic header generation. - [XML to JSON API](https://botoi.com/api/text-data/xml-to-json/): Convert XML documents to JSON with attribute and namespace handling. ### Developer Utilities - [Developer Utility APIs](https://botoi.com/api/developer/): Hashing, UUIDs, URL encoding, password generation, cron parsing, JWT, color conversion, and math evaluation APIs - [Hash API](https://botoi.com/api/developer/hash-generate/): Generate MD5, SHA-1, SHA-256, SHA-384, and SHA-512 hashes from any string with a single API call. - [Batch Hash API](https://botoi.com/api/developer/hash-batch/): Generate MD5, SHA-1, SHA-256, and SHA-512 hashes for the same input in a single API call. - [HMAC API](https://botoi.com/api/developer/hash-hmac/): Generate HMAC signatures using SHA-256, SHA-1, or SHA-512. Verify webhook payloads, sign API requests, and authenticate messages. - [UUID v4 API](https://botoi.com/api/developer/uuid-v4/): Generate cryptographically random UUID v4 identifiers with a single API call. - [Batch UUID API](https://botoi.com/api/developer/uuid-batch/): Generate up to 100 UUIDs in a single API call. Supports v4 and v7 versions. - [ULID API](https://botoi.com/api/developer/uuid-ulid/): Generate Universally Unique Lexicographically Sortable Identifiers (ULIDs). Time-ordered, Crockford Base32-encoded. - [UUID Validate API](https://botoi.com/api/developer/uuid-validate/): Validate any UUID string and detect its version (v1, v4, v5, v7). Returns format validity, version number, and variant. - [UUID v7 API](https://botoi.com/api/developer/uuid-v7/): Generate UUID v7 identifiers with embedded millisecond timestamps. Time-ordered for efficient database indexing. - [URL Encode API](https://botoi.com/api/developer/url-encode/): URL-encode any string. Converts special characters to percent-encoded format for safe use in URLs and query strings. - [URL Decode API](https://botoi.com/api/developer/url-decode/): Decode percent-encoded URL strings back to readable text. Handles %20, %26, and all RFC 3986 escape sequences. - [URL Parse API](https://botoi.com/api/developer/url-parse/): Parse any URL into its components: protocol, host, port, path, query parameters, and hash fragment. - [Password Generator API](https://botoi.com/api/developer/password-generate/): Generate cryptographically secure passwords with configurable length, character sets, and count. - [Password Strength API](https://botoi.com/api/developer/password-strength/): Check password strength and get actionable feedback. Returns a 0-4 score, estimated crack time, and improvement suggestions. - [Cron Parse API](https://botoi.com/api/developer/cron-parse/): Parse any cron expression and get a plain-English description. Supports standard 5-field cron syntax. - [Cron Next Runs API](https://botoi.com/api/developer/cron-next/): Get the next scheduled run times for any cron expression. Supports timezone-aware calculations. - [Mock Data API](https://botoi.com/api/developer/random-data/): Generate realistic fake test data: names, emails, addresses, phone numbers, and more. - [Color Convert API](https://botoi.com/api/developer/color-convert/): Convert colors between HEX, RGB, and HSL formats with a single API call. - [Color Palette API](https://botoi.com/api/developer/color-palette/): Generate complementary, analogous, triadic, tetradic, or monochromatic color palettes from any base color. - [JWT Decode API](https://botoi.com/api/developer/jwt-decode/): Decode any JWT token and inspect its header, payload, and expiry without verifying the signature. - [JWT Generate API](https://botoi.com/api/developer/jwt-generate/): Generate signed JWT tokens with custom payloads, algorithms, and expiry. Supports HS256, HS384, and HS512. - [Text Diff API](https://botoi.com/api/developer/diff-text/): Compare two text strings line by line and get a unified diff output. - [JSON Diff API](https://botoi.com/api/developer/diff-json/): Deep-compare two JSON objects and get a structured list of additions, deletions, and changes at every nesting level. - [Number Format API](https://botoi.com/api/developer/number-format/): Format numbers with locale-aware separators, currency symbols, and percentage notation. - [TOTP Generate API](https://botoi.com/api/developer/totp-generate/): Generate time-based one-time passwords (TOTP) from a shared secret. Compatible with Google Authenticator and Authy. - [TOTP Validate API](https://botoi.com/api/developer/totp-validate/): Validate a TOTP code against a shared secret with configurable time window for clock skew tolerance. - [Timestamp Convert API](https://botoi.com/api/developer/timestamp-convert/): Convert between Unix timestamps, ISO 8601, and RFC 2822 date formats. - [Semver Compare API](https://botoi.com/api/developer/semver-compare/): Compare two semantic version strings and determine which is greater, equal, or less. - [Semver Validate API](https://botoi.com/api/developer/semver-validate/): Validate whether a string is a valid semantic version per the semver 2.0.0 specification. - [YAML to JSON API](https://botoi.com/api/developer/yaml-to-json/): Convert YAML documents to JSON with a single API call. Handles nested objects, arrays, and multi-document YAML. - [JSON to YAML API](https://botoi.com/api/developer/json-to-yaml/): Convert JSON objects to clean YAML output with proper indentation. - [Math Evaluate API](https://botoi.com/api/developer/math-evaluate/): Evaluate mathematical expressions safely via API. Supports arithmetic, parentheses, powers, and common functions. - [Unit Convert API](https://botoi.com/api/developer/units-convert/): Convert between units of length, weight, temperature, volume, speed, and more. - [Software License API](https://botoi.com/api/developer/license-lookup/): Look up any open-source license by its SPDX identifier. Returns permissions, conditions, limitations, and OSI/FSF approval status. ### Image & Media - [Image & Media APIs](https://botoi.com/api/image-media/): OG image generation, QR codes, placeholders, avatars, favicons, and barcode generation APIs - [OG Image API](https://botoi.com/api/image-media/og-generate/): Generate Open Graph images on the fly with custom titles, descriptions, themes, and brand colors. Returns PNG. - [QR Code API](https://botoi.com/api/image-media/qr-generate/): Generate QR codes from any text or URL. Returns crisp SVG output with configurable size, error correction, and margin. - [Placeholder Image API](https://botoi.com/api/image-media/placeholder-image/): Generate placeholder images with custom width, height, background color, text, and format. - [Avatar API](https://botoi.com/api/image-media/avatar-generate/): Generate unique identicon avatars from any string seed. Returns SVG or PNG at configurable sizes. - [Favicon API](https://botoi.com/api/image-media/favicon-extract/): Extract all favicon URLs, sizes, and types from any domain. Returns structured JSON with icon metadata. - [Barcode API](https://botoi.com/api/image-media/barcode-generate/): Generate barcodes in Code128, EAN-13, EAN-8, UPC-A, ITF-14, and MSI formats via API. Returns SVG. ### Security & Validation - [Security & Validation APIs](https://botoi.com/api/security/): Credit card validation, IBAN checks, VAT verification, AES encryption/decryption, and OTP generation APIs - [Credit Card Validation API](https://botoi.com/api/security/validate-credit-card/): Validate credit card numbers using the Luhn algorithm and detect the card brand (Visa, Mastercard, Amex). - [IBAN Validation API](https://botoi.com/api/security/validate-iban/): Validate International Bank Account Numbers (IBAN) and extract country code, bank code, and check digits. - [VAT Validation API](https://botoi.com/api/security/validate-vat/): Validate European VAT identification numbers and extract the country code and expected format. - [AES-256 Encryption API](https://botoi.com/api/security/aes-encrypt/): Encrypt text with AES-256-GCM using a password. Server-side encryption with no data storage. - [AES-256 Decryption API](https://botoi.com/api/security/aes-decrypt/): Decrypt AES-256-GCM ciphertext using a password. Server-side decryption with no data storage. - [OTP Generator API](https://botoi.com/api/security/otp-generate/): Generate numeric or alphanumeric one-time passwords with configurable length. - [Breach Check API](https://botoi.com/api/security/breach-check/): Check if a password has appeared in known data breaches using k-Anonymity. - [Security Headers Grade API](https://botoi.com/api/security/security-grade/): Grade any website's security headers from A+ to F. Checks HSTS, CSP, X-Content-Type-Options, X-Frame-Options, Referrer-Policy, and Permissions-Policy. - [Phishing URL Check API](https://botoi.com/api/security/phishing-check/): Check any URL against known phishing and malware databases. Returns threat type, source, and malicious status powered by URLhaus. ### Storage & Services - [Storage & Services APIs](https://botoi.com/api/storage/): Webhook inboxes, URL shortening, paste storage, and geocoding APIs - [Webhook Inbox API](https://botoi.com/api/storage/webhook-inbox-create/): Create a temporary webhook inbox that captures incoming HTTP payloads for 24 hours. Free API for testing webhooks, debugging integrations, and inspecting payloads. - [Webhook Payload List API](https://botoi.com/api/storage/webhook-inbox-list/): Retrieve all captured webhook payloads from a temporary inbox. View timestamps, request bodies, and payload IDs. - [URL Shortener API](https://botoi.com/api/storage/short-url-create/): Shorten any URL with an optional custom slug. Get a tracked short link with click analytics. - [Short URL Stats API](https://botoi.com/api/storage/short-url-stats/): Get click count, creation date, and original URL for any shortened link. - [Paste Bin API](https://botoi.com/api/storage/paste-create/): Create temporary text pastes with syntax highlighting and configurable TTL up to 24 hours. - [Paste Retrieval API](https://botoi.com/api/storage/paste-get/): Retrieve a stored paste by ID, including content, language tag, and creation timestamp. - [Distance Calculator API](https://botoi.com/api/storage/geo-distance/): Calculate the great-circle distance between two coordinates using the Haversine formula. Supports km, miles, and nautical miles. - [Geocoding API](https://botoi.com/api/storage/geo-geocode/): Convert a street address or place name into latitude and longitude coordinates. Powered by OpenStreetMap. - [Reverse Geocoding API](https://botoi.com/api/storage/geo-reverse/): Convert latitude and longitude coordinates into a human-readable street address. Powered by OpenStreetMap. - [Batch Geocoding API](https://botoi.com/api/storage/geo-batch/): Geocode up to 10 addresses in a single API call. Returns coordinates for each address with individual error handling. --- ## POST /v1/address/validate Validate a freeform address and return structured components, coordinates, and a confidence score. Uses geocoding to verify the address exists. Use cases: - Validate shipping addresses in checkout flows - Standardize address formats across systems - Verify addresses before sending mail or deliveries Request: ```json { "address": "1600 Amphitheatre Parkway, Mountain View, CA" } ``` Response: ```json { "success": true, "data": { "valid": true, "formatted_address": "1600 Amphitheatre Parkway, Mountain View, CA 94043, USA", "components": { "house_number": "1600", "road": "Amphitheatre Parkway", "city": "Mountain View", "state": "California", "postcode": "94043", "country": "United States", "country_code": "us" }, "location": { "lat": 37.4224, "lng": -122.0842 }, "confidence": 0.95, "type": "building" } } ``` --- ## POST /v1/address/autocomplete Return address suggestions for partial input. Search-as-you-type for address forms. Use cases: - Autocomplete address fields in signup or checkout forms - Build address search with map integrations - Reduce user input errors with suggestions Request: ```json { "query": "1600 Amphithea", "limit": 5, "lang": "en" } ``` Response: ```json { "success": true, "data": { "query": "1600 Amphithea", "suggestions": [ { "formatted": "1600 Amphitheatre Parkway, Mountain View, California, US", "components": { "house_number": "1600", "street": "Amphitheatre Parkway", "city": "Mountain View", "state": "California", "country": "United States" }, "location": { "lat": 37.4224, "lng": -122.0842 } } ] } } ``` --- ## POST /v1/geo/batch Geocode up to 10 addresses in a single request. Individual failures don't fail the batch. Use cases: - Geocode a list of customer addresses for map plotting - Bulk convert addresses to coordinates for analytics - Validate multiple addresses in one API call Request: ```json { "addresses": ["London, UK", "Paris, France", "xyzzy nowhere"] } ``` Response: ```json { "success": true, "data": { "results": [ { "address": "London, UK", "lat": 51.5074, "lng": -0.1278, "display_name": "London, Greater London, England, United Kingdom", "type": "city" }, { "address": "Paris, France", "lat": 48.8566, "lng": 2.3522, "display_name": "Paris, Ile-de-France, France", "type": "city" }, { "address": "xyzzy nowhere", "lat": null, "lng": null, "error": "No results found" } ], "total": 3, "resolved": 2, "failed": 1 } } ``` --- ## POST /v1/disposable-email/list Return the full list of known disposable email domains. Optionally filter by search string. Use cases: - Download the disposable domain list for local validation - Build client-side email filters without API calls per check - Audit which disposable domains are in your user database Request: ```json { "search": "guerrilla" } ``` Response: ```json { "success": true, "data": { "count": 7, "domains": ["guerrillamail.biz", "guerrillamail.com", "guerrillamail.de", "guerrillamail.info", "guerrillamail.net", "guerrillamail.org", "guerrillamailblock.com"] } } ``` --- ## POST /v1/breach/check Check if a password has appeared in known data breaches. Uses the Have I Been Pwned k-Anonymity API. The full password is never sent over the network. Use cases: - Check password strength during signup or password change - Audit existing passwords against known breaches - Add breach detection to password policy enforcement Request: ```json { "password": "P@ssw0rd123" } ``` Response: ```json { "success": true, "data": { "breached": true, "breach_count": 37615, "recommendation": "This password has appeared in data breaches. Choose a different password." } } ``` --- ## POST /v1/dns-monitor/check Check current DNS records for a domain and compare against the previous snapshot. Detects record changes over time. Use cases: - Monitor DNS changes after migrations - Detect unauthorized DNS modifications - Track DNS propagation after updates Request: ```json { "domain": "example.com", "types": ["A", "MX", "NS"] } ``` Response: ```json { "success": true, "data": { "domain": "example.com", "checked_at": "2026-03-30T12:00:00Z", "previous_check": "2026-03-30T06:00:00Z", "changes_detected": true, "records": { "A": { "current": ["93.184.216.34"], "previous": ["93.184.215.14"], "changed": true }, "MX": { "current": ["10 mx1.example.com"], "previous": ["10 mx1.example.com"], "changed": false }, "NS": { "current": ["ns1.example.com", "ns2.example.com"], "previous": ["ns1.example.com", "ns2.example.com"], "changed": false } } } } ``` --- ## POST /v1/ssl-cert/expiry Check SSL certificate expiry for a domain using Certificate Transparency logs. Returns days remaining and expiry status. Use cases: - Monitor SSL certificate expiry dates across your domains - Build alerts for certificates expiring within 30 days - Audit third-party service SSL health Request: ```json { "domain": "github.com" } ``` Response: ```json { "success": true, "data": { "domain": "github.com", "issuer": "DigiCert Inc", "subject": "github.com", "valid_from": "2024-03-07T00:00:00Z", "valid_to": "2025-03-12T23:59:59Z", "days_remaining": 290, "expired": false, "expiring_soon": false } } ``` --- ## POST /v1/accessibility/check Fetch a webpage and run 10 basic accessibility checks on the HTML. Returns a score, issues list, and summary. Use cases: - Audit website accessibility before launch - Add accessibility checks to CI/CD pipelines - Monitor competitor or partner site accessibility Request: ```json { "url": "https://example.com" } ``` Response: ```json { "success": true, "data": { "url": "https://example.com", "score": 70, "issues": [ { "rule": "img-alt", "severity": "error", "count": 3, "description": "Images missing alt text" }, { "rule": "heading-order", "severity": "warning", "count": 1, "description": "Heading levels should increase by one" } ], "summary": { "errors": 1, "warnings": 1, "passes": 8, "total_checks": 10 } } } ``` ### Weather - Current conditions `POST /v1/weather/current` Get current weather by city name or coordinates. Powered by Open-Meteo (no API key needed). Request: ```json { "city": "London" } ``` Or by coordinates: ```json { "lat": 51.5074, "lng": -0.1278 } ``` Response: ```json { "success": true, "data": { "location": { "city": "London", "country": "United Kingdom", "lat": 51.5074, "lng": -0.1278 }, "temperature": { "current": 15.2, "feels_like": 13.8, "unit": "°C" }, "humidity": 72, "precipitation": { "value": 0.0, "unit": "mm" }, "wind": { "speed": 12.5, "direction": 220, "gusts": 18.3, "unit": "km/h" }, "cloud_cover": 45, "weather_code": 2, "description": "Partly cloudy" } } ``` ### Air Quality - Check pollution levels `POST /v1/air-quality/check` Get air quality index and pollutant levels by coordinates. Powered by Open-Meteo. Request: ```json { "lat": 40.7128, "lng": -74.006 } ``` Response: ```json { "success": true, "data": { "location": { "lat": 40.7128, "lng": -74.006 }, "aqi": { "us": 42, "european": 28 }, "aqi_category": "Good", "pollutants": { "pm2_5": 10.2, "pm10": 18.5, "carbon_monoxide": 201.3, "nitrogen_dioxide": 12.1, "sulphur_dioxide": 3.4, "ozone": 45.6 }, "units": { "pm2_5": "μg/m³", "pm10": "μg/m³", "carbon_monoxide": "μg/m³", "nitrogen_dioxide": "μg/m³", "sulphur_dioxide": "μg/m³", "ozone": "μg/m³" } } } ``` ### Elevation - Get altitude for coordinates `POST /v1/elevation/lookup` Get elevation in meters for a single point or batch of up to 10 locations. Powered by Open-Meteo. Request (single): ```json { "lat": 27.9881, "lng": 86.925 } ``` Request (batch): ```json { "locations": [ { "lat": 27.9881, "lng": 86.925 }, { "lat": 36.5785, "lng": -118.2923 } ] } ``` Response (single): ```json { "success": true, "data": { "lat": 27.9881, "lng": 86.925, "elevation": 8091, "unit": "m" } } ``` ### On Water - Check if point is on water `POST /v1/on-water/check` Determine whether a geographic coordinate is on water or land. Request: ```json { "lat": 41.01, "lng": 28.98 } ``` Response: ```json { "success": true, "data": { "lat": 41.01, "lng": 28.98, "water": false } } ``` ### Phishing - Check URL for malware `POST /v1/phishing/check` Check whether a URL is a known phishing or malware URL using the URLhaus database. Request: ```json { "url": "https://suspicious-site.example.com/login" } ``` Response: ```json { "success": true, "data": { "url": "https://suspicious-site.example.com/login", "is_malicious": false, "threat_type": null, "source": "URLhaus", "details": null } } ``` ### Carbon - Website CO2 footprint `POST /v1/carbon/estimate` Estimate CO2 emissions per page load for a given URL. Uses Green Web Foundation methodology. Request: ```json { "url": "https://www.google.com" } ``` Response: ```json { "success": true, "data": { "url": "https://www.google.com", "bytes": 245000, "co2_grams": 0.082458, "energy_kwh": 0.0001865506, "cleaner_than_percent": 72, "methodology": { "energy_per_gb_kwh": 0.81, "carbon_intensity_g_per_kwh": 442, "median_page_bytes": 2200000, "source": "Green Web Foundation / HTTP Archive" } } } ``` ### Page Rank - Domain authority `POST /v1/page-rank/check` Get the Open PageRank score for a domain. Request: ```json { "domain": "google.com" } ``` Response: ```json { "success": true, "data": { "domain": "google.com", "page_rank_decimal": 10, "rank": 1, "status_code": 200 } } ``` ### Holidays - Public holidays by country `POST /v1/holidays/list` Get public holidays for a given country and year. Powered by Nager.Date (100+ countries). Request: ```json { "country": "US", "year": 2026 } ``` Response: ```json { "success": true, "data": { "country": "US", "year": 2026, "count": 11, "holidays": [ { "date": "2026-01-01", "name": "New Year's Day", "local_name": "New Year's Day", "types": ["Public"] }, { "date": "2026-01-19", "name": "Martin Luther King, Jr. Day", "local_name": "Martin Luther King, Jr. Day", "types": ["Public"] } ] } } ``` ### BIN Lookup - Credit card BIN/IIN `POST /v1/bin/lookup` Look up card network, type, issuing bank, and country from the first 6-8 digits of a card number. Request: ```json { "bin": "45717360" } ``` Response: ```json { "success": true, "data": { "bin": "45717360", "scheme": "visa", "type": "debit", "brand": "Visa Classic", "country": { "name": "Lithuania", "emoji": "🇱🇹", "alpha2": "LT" }, "bank": { "name": "BANK OF LITHUANIA", "url": "http://www.lb.lt", "phone": null }, "prepaid": false } } ``` ### Domain Search - Find registered domains `POST /v1/domain-search/search` Search for registered domains by keyword. Powered by DomainsDB. Request: ```json { "query": "startup", "zone": "com", "limit": 5 } ``` Response: ```json { "success": true, "data": { "query": "startup", "zone": "com", "count": 5, "domains": [ { "domain": "startup.com", "create_date": "1997-09-15", "update_date": "2024-08-10", "country": null, "is_dead": false }, { "domain": "startupgrind.com", "create_date": "2010-02-17", "update_date": "2024-01-12", "country": "US", "is_dead": false } ] } } ``` ### License - Software license details `POST /v1/license/lookup` Get permissions, conditions, and limitations for a software license by SPDX ID. Request: ```json { "id": "MIT" } ``` Response: ```json { "success": true, "data": { "id": "MIT", "name": "MIT License", "is_osi_approved": true, "is_fsf_libre": true, "is_deprecated": false, "permissions": ["commercial-use", "distribution", "modification", "private-use"], "conditions": ["include-copyright"], "limitations": ["no-liability", "no-warranty"] } } ``` ### npm Package Info `POST /v1/npm/info` Get metadata, version history, and dependency count for an npm package. Request: ```json { "package": "express" } ``` Response: ```json { "success": true, "data": { "name": "express", "version": "4.21.0", "description": "Fast, unopinionated, minimalist web framework", "license": "MIT", "homepage": "http://expressjs.com/", "repository": "https://github.com/expressjs/express", "keywords": ["express", "framework", "web", "rest", "api"], "dependencies_count": 31, "versions_count": 279, "created": "2010-12-29T19:38:25.450Z", "modified": "2024-09-11T16:05:41.024Z" } } ``` ### ASN Details - Network intelligence `POST /v1/asn/lookup` Get ASN organization, country, and RDAP registration data. Accepts numeric ASN or "AS" prefixed string. Request: ```json { "asn": "AS13335" } ``` Response: ```json { "success": true, "data": { "asn": 13335, "organization": "Cloudflare, Inc.", "country": "US", "rdap": { "handle": "AS13335", "name": "CLOUDFLARENET", "type": "DIRECT ALLOCATION", "ip_range": null, "registration_date": "2010-07-14T00:00:00Z", "abuse_contact": "abuse@cloudflare.com" } } } ``` ### Crypto Price `POST /v1/exchange/price` Get cryptocurrency price, market cap, volume, and 24h change. Powered by CoinGecko. Request: ```json { "coin": "bitcoin", "currencies": ["usd", "eur"] } ``` Response: ```json { "success": true, "data": { "coin": "bitcoin", "prices": { "usd": 67234.12, "eur": 62100.50 }, "market_caps": { "usd": 1320000000000, "eur": 1219000000000 }, "volumes_24h": { "usd": 28500000000, "eur": 26340000000 }, "change_24h": { "usd": 2.45, "eur": 2.38 }, "last_updated": "2026-03-30T12:00:00Z" } } ``` ### Crypto Search `POST /v1/exchange/search` Search for cryptocurrencies by name or symbol. Request: ```json { "query": "ethereum" } ``` Response: ```json { "success": true, "data": { "query": "ethereum", "coins": [ { "id": "ethereum", "name": "Ethereum", "symbol": "eth", "market_cap_rank": 2, "thumb": "https://assets.coingecko.com/coins/images/279/thumb/ethereum.png" } ], "count": 1 } } ``` ### Age Estimate `POST /v1/age/estimate` Estimate age from a first name. Powered by Agify.io. Request: ```json { "name": "Michael", "country_id": "US" } ``` Response: ```json { "success": true, "data": { "name": "michael", "age": 58, "count": 233482, "country_id": "US" } } ``` ### Gender Estimate `POST /v1/gender/estimate` Estimate gender from a first name. Powered by Genderize.io. Request: ```json { "name": "Maria" } ``` Response: ```json { "success": true, "data": { "name": "maria", "gender": "female", "probability": 0.98, "count": 456789, "country_id": null } } ``` ### Nationality Estimate `POST /v1/nationality/estimate` Estimate most likely nationalities from a name. Powered by Nationalize.io. Request: ```json { "name": "Tanaka" } ``` Response: ```json { "success": true, "data": { "name": "tanaka", "countries": [ { "country_id": "JP", "probability": 0.85 }, { "country_id": "BR", "probability": 0.05 } ], "count": 12345 } }