Ir al contenido
GET /v1/meta

Spec

Pruébalo en vivo

10 llamadas gratis al día — sin registro, sin clave API. Pasa por el gateway de oanor.

Encabezados personalizados (opcional)
api.oanor.com/urlcanon-api

Funciona. Consigue una clave API y úsala en tu proyecto.

Obtener una clave API

Fragmentos de código

curl "https://api.oanor.com/urlcanon-api/v1/meta" \
  -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/urlcanon-api/v1/meta", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/urlcanon-api/v1/meta");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
    "https://api.oanor.com/urlcanon-api/v1/meta",
    headers={"x-oanor-key": "oanor_test_..."}
)

Respuesta de ejemplo

Una respuesta real de este endpoint, capturada en la última comprobación de estado.

{
    "data": {
        "name": "URL Canonicalize API",
        "notes": "Scheme and host are lower-cased and the default port dropped; the path is case-sensitive so it is left as-is unless lowercase_path is set. This canonicalizes the URL string locally — it does not fetch it or follow redirects (use a URL-unfurl/unshorten API for that). Nothing is stored.",
        "version": "v1",
        "endpoints": [
            {
                "path": "/v1/canonicalize",
                "params": {
                    "url": "the URL (required, with scheme)",
                    "sort_query": "sort query parameters (default true)",
                    "lowercase_path": "lower-case the path (default false)",
                    "trailing_slash": "keep (default), add or remove",
                    "remove_fragment": "drop the #fragment (default false)",
                    "remove_tracking": "strip utm_*/gclid/fbclid… (default true)"
                },
                "returns": "the canonical URL, its components and the changes made"
            },
            {
                "path": "/v1/compare",
                "params": {
                    "a": "first URL (required)",
                    "b": "second URL (required)",
                    "…options": "same options as canonicalize"
                },
                "returns": "whether a and b are the same URL, with both canonical forms"
            },
            {
                "path": "/v1/meta",
                "params": [],
                "returns": "this document"
            }
        ],
        "description": "Normalize URLs to a canonical form so you can deduplicate and compare them. The canonicalize endpoint lower-cases the scheme and host, removes the default port (80/443), resolves ./ and ../ path segments and fixes percent-encoding (all via the WHATWG URL parser), then applies the cleanups you want: strip marketing/analytics tracking parameters (utm_*, gclid, fbclid, msclkid and many more), sort the remaining query parameters, optionally drop the #fragment, and add or remove the trailing slash. It returns the canonical URL, the parsed components and exactly which changes were made. The compare endpoint canonicalizes two URLs and tells you whether they point to the same resource. Pure local, no network, no key."
    },
    "meta": {
        "timestamp": "2026-06-03T09:24:58.563Z",
        "request_id": "b7990b1b-f008-4d32-abca-9d199697c8d1"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}