Hreflang-validatie-API API-referentie
Valideer hreflang-codes, x-default, zelfverwijzingen en terugverwijzingen. Gebruik deze referentie om een bewerking te kiezen en het gedocumenteerde responsecontract te integreren.
Bewerkingen
GET /v1/hreflang
GET
/v1/hreflang
Tegoeden: 3
Queryparameters
| Parameter | Type | vereist |
|---|---|---|
| url | string | vereist |
| max_alternates |
integer
Standaard
10
|
optioneel |
Antwoordvelden
| Veld | Type |
|---|---|
url |
string |
final_url |
string |
status |
string |
reason |
string | null |
checked_at |
string |
fetch |
object |
fetch.http_status |
integer | null |
fetch.final_url |
string |
fetch.content_type |
string | null |
fetch.bytes |
integer |
fetch.truncated |
boolean |
fetch.redirect_count |
integer |
fetch.duration_ms |
integer |
fetch.rendered |
boolean |
lang |
string | null |
entries[] |
object[] |
entries[] |
object |
entries[].hreflang |
string |
entries[].href |
string |
entries[].url |
string | null |
entries[].source |
string |
entries[].valid_code |
boolean |
entries[].issues[] |
string[] |
self_reference |
boolean |
x_default |
boolean |
issues[] |
string[] |
return_links |
object |
return_links.alternates |
integer |
return_links.checked |
integer |
return_links.not_checked |
integer |
return_links.confirmed |
integer |
return_links.missing |
integer |
return_links.code_mismatch |
integer |
return_links.not_found |
integer |
return_links.unknown |
integer |
return_links.results[] |
object[] |
return_links.results[] |
object |
return_links.results[].url |
string |
return_links.results[].hreflang[] |
string[] |
return_links.results[].state |
string |
return_links.results[].http_status |
integer | null |
return_links.results[].final_url |
string | null |
return_links.results[].canonical |
string | null |
return_links.results[].lang |
string | null |
return_links.results[].issues[] |
string[] |
Voorbeeldverzoek
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/hreflang?url=https%3A%2F%2Fexample.com&max_alternates=10"const response = await fetch("https://domscan.net/v1/hreflang?url=https%3A%2F%2Fexample.com&max_alternates=10", {
headers: { "X-API-Key": process.env.DOMSCAN_API_KEY },
});
const data = await response.json();
console.log(data);import os
import requests
response = requests.get(
"https://domscan.net/v1/hreflang?url=https%3A%2F%2Fexample.com&max_alternates=10",
headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
)
print(response.json())package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest(http.MethodGet, "https://domscan.net/v1/hreflang?url=https%3A%2F%2Fexample.com&max_alternates=10", nil)
if err != nil {
panic(err)
}
req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
data, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(resp.Status, string(data))
}require "json"
require "net/http"
uri = URI("https://domscan.net/v1/hreflang?url=https%3A%2F%2Fexample.com&max_alternates=10")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
http.request(request)
end
puts JSON.pretty_generate(JSON.parse(response.body))Voorbeeldantwoord
{
"url": "https://example.com/shoes/trail-runner",
"final_url": "https://example.com/shoes/trail-runner",
"status": "ok",
"reason": null,
"checked_at": "2026-10-13T12:00:00.000Z",
"fetch": {
"http_status": 200,
"final_url": "https://example.com/shoes/trail-runner",
"content_type": "text/html",
"bytes": 3535,
"truncated": false,
"redirect_count": 0,
"duration_ms": 412,
"rendered": false
},
"lang": "en",
"entries": [
{
"hreflang": "en",
"href": "https://example.com/shoes/trail-runner",
"url": "https://example.com/shoes/trail-runner",
"source": "html",
"valid_code": true,
"issues": []
},
{
"hreflang": "es-ES",
"href": "https://example.com/es/zapatillas/trail-runner",
"url": "https://example.com/es/zapatillas/trail-runner",
"source": "html",
"valid_code": true,
"issues": []
},
{
"hreflang": "x-default",
"href": "https://example.com/shoes/trail-runner",
"url": "https://example.com/shoes/trail-runner",
"source": "html",
"valid_code": true,
"issues": []
}
],
"self_reference": true,
"x_default": true,
"issues": [],
"return_links": {
"alternates": 1,
"checked": 1,
"not_checked": 0,
"confirmed": 1,
"missing": 0,
"not_found": 0,
"unknown": 0,
"results": [
{
"url": "https://example.com/es/zapatillas/trail-runner",
"hreflang": [
"es-ES"
],
"http_status": 200,
"final_url": "https://example.com/es/zapatillas/trail-runner",
"canonical": "https://example.com/es/zapatillas/trail-runner",
"lang": "es",
"issues": [],
"state": "confirmed"
}
]
}
}
HTTP-statuscodes
200OK400Ongeldig verzoek401Niet geautoriseerd402Betaling vereist429Te veel verzoeken