🔍

IDN Converter

Convert between internationalized domain names (Unicode) and Punycode.

GET /v1/idn
curl "https://dns.toolkitapi.io/v1/idn?domain=münchen.de"
import httpx

resp = httpx.get(
    "https://dns.toolkitapi.io/v1/idn?domain=münchen.de",
)
print(resp.json())
const resp = await fetch("https://dns.toolkitapi.io/v1/idn?domain=münchen.de", {
});
const data = await resp.json();
console.log(data);
# See curl example
Response 200 OK
{
  "input": "münchen.de",
  "unicode_form": "münchen.de",
  "ascii_form": "xn--mnchen-3ya.de",
  "is_idn": true,
  "labels": [{"label": "münchen", "ascii": "xn--mnchen-3ya", "is_idn": true}],
  "error": null,
  "query_time_ms": 1.2
}

Try It Live

Live Demo

Description

Convert between internationalized domain names (Unicode) and Punycode.

How to Use

1

1. Pass any domain — Unicode or Punycode — in the `domain` parameter.

2

2. The API auto-detects the format and returns both forms plus a per-label analysis.

About This Tool

IDN Converter translates internationalized domain names between their Unicode (human-readable) and ASCII/Punycode (DNS-compatible) forms. It detects whether a domain uses internationalized characters and provides a per-label breakdown showing which parts are internationalized.

Essential for working with non-ASCII domain names — whether you're registering internationalized domains, debugging DNS issues, or validating IDN input in your application.

Why Use This Tool

Frequently Asked Questions

Does this work with Punycode input?
Yes — pass `xn--mnchen-3ya.de` and it will return the Unicode form `münchen.de`.
Which encoding standard is used?
IDNA 2008 (RFC 5891/5892), the current standard used by modern browsers and registrars.

Start using IDN Converter now

Get your free API key and make your first request in under a minute.