URL Parser and Domain Extractor
URL parser: parse and canonicalise a URL, and extract its registrable domain using the Public Suffix List — the part an agent needs to decide whether two URLs belong to the same owner. Returns scheme, host, port, path, decoded query parameters and fragment, the public suffix, the registrable domain (eTLD+1), the subdomain, whether the suffix is ICANN or private, plus a canonical form with default port, dot-segments and percent-encoding normalised. unicode_host uses WHATWG/UTS 46 (non-strict).
Offering
- Provider
- api.duoleads.com
- Method
- GET
- Offering type
- Api Endpoint
- Transport type
- http
- Category
- General Utilities
- Delivery
- Not provided
- Pricing model
- Not provided
- x402 version
- 2
Endpoint context
- URL
https://api.duoleads.com/v1/code/url- MIME type
- application/json
- First seen
- 2026-10-16T01:50:38.788Z
- Last seen
- Tags
- url, url-parser, domain, domains, psl
Payment pricing
x402 payment terms are the authoritative price for calling this endpoint.
- Payment option 1
- 0.05 USDC
Atomic price: 50000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
{
"scheme": "exact",
"network": "eip155:8453",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "50000",
"payTo": "0xCD673f7e1daD254347AEab6be0DEFe8b9C6b3A39"
}
]Observed health
- Status
- Healthy
- Latest latency
- 34 ms
- Average latency
- 704 ms
- HTTP status
- 402
- Last checked
- Reachability
- 100% over 14 checks
Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.
Input schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"enum": [
"GET"
]
},
"queryParams": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Absolute URL, or a bare hostname (https:// assumed).",
"maxLength": 2048
},
"base": {
"type": "string",
"description": "Base URL to resolve url against as a relative reference.",
"maxLength": 2048
}
},
"required": [
"url"
]
}
},
"required": [
"type",
"method"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {
"base": {
"description": "Base URL to resolve url against as a relative reference.",
"maxLength": 2048,
"type": "string"
},
"url": {
"description": "Absolute URL, or a bare hostname (https:// assumed).",
"maxLength": 2048,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"data": {
"properties": {
"canonical": {
"type": "string"
},
"fragment": {
"type": [
"string",
"null"
]
},
"host": {
"type": [
"string",
"null"
]
},
"host_type": {
"type": [
"string",
"null"
]
},
"path": {
"type": "string"
},
"port": {
"type": [
"string",
"null"
]
},
"public_suffix": {
"type": [
"string",
"null"
]
},
"query": {
"items": {
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"key",
"value"
],
"type": "object"
},
"type": "array"
},
"registrable_domain": {
"type": [
"string",
"null"
]
},
"scheme": {
"type": "string"
},
"subdomain": {
"type": [
"string",
"null"
]
},
"suffix_source": {
"type": "string"
},
"unicode_host": {
"type": [
"string",
"null"
]
},
"username": {
"type": [
"string",
"null"
]
}
},
"required": [
"canonical",
"scheme",
"username",
"host",
"port",
"path",
"fragment",
"query",
"public_suffix",
"registrable_domain",
"subdomain",
"suffix_source",
"host_type",
"unicode_host"
],
"type": "object"
},
"meta": {
"properties": {
"computed_at": {
"description": "RFC 3339 UTC with milliseconds",
"type": "string"
},
"deterministic": {
"type": "boolean"
},
"disclaimer": {
"type": "string"
},
"price_usd": {
"type": "string"
},
"request_id": {
"type": "string"
},
"sources": {
"items": {
"required": [
"id",
"version",
"published"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"request_id",
"computed_at",
"price_usd",
"deterministic",
"disclaimer"
],
"type": "object"
},
"ok": {
"const": true
},
"route": {
"const": "/v1/code/url"
},
"version": {
"type": "string"
}
},
"required": [
"ok",
"route",
"version",
"data",
"meta"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}