Entwickler-Referenz
Unternehmenssuche
Diese API ist in Beta. Ergebnisse können in Genauigkeit und Vollständigkeit variieren. Daten werden aus öffentlichen Quellen aggregiert.
Unternehmenssuche
Diese API ist in Beta. Ergebnisse können in Genauigkeit und Vollständigkeit variieren. Daten werden aus öffentlichen Quellen aggregiert.
GET
/v1/company
Abfrageparameter
| Parameter | Typ | Beschreibung |
|---|---|---|
| domain erforderlich | string | Unternehmensdomain für die Suche (z. B. "stripe.com") |
Antwortfelder
| Feld | Beschreibung |
|---|---|
company.name | Offizieller Unternehmensname |
company.description | Geschäftsbeschreibung |
social | LinkedIn-, Twitter-, Facebook-Links |
Anwendungsfälle
- Wettbewerbsanalyse
- Recherche zu Anbietern und Partnern
Beispielanfrage
curl -H "X-API-Key: your-api-key" "https://domscan.net/v1/company?domain=stripe.com"
Beispielantwort
{
"domain": "stripe.com",
"company": {
"name": "Stripe",
"legal_name": null,
"description": "Financial infrastructure for the internet.",
"founded_year": null,
"industry": null,
"employee_count_range": null,
"type": null
},
"location": {
"headquarters": null
},
"social": {
"linkedin": "https://linkedin.com/company/stripe",
"twitter": "https://twitter.com/stripe",
"facebook": null,
"github": null
},
"tech": {
"email_provider": "Google Workspace",
"website_technologies": []
},
"confidence": 0.65
}
GET
/v1/identity-assets
Credits: 2
Abfrageparameter
| Parameter | Typ | erforderlich |
|---|---|---|
| domain | string | erforderlich |
| skip_cache |
string
Zulässige Werte
1
|
optional |
Antwortfelder
| Feld | Typ |
|---|---|
cache_age_s |
integer |
domain |
string |
website_url |
string |
fetch_state |
string |
organization_name |
string | null |
assets |
object |
assets.logo_url |
string | null |
assets.logo_kind |
string | null |
assets.logo_source |
string | null |
assets.logo_verification |
string | null |
assets.favicon_url |
string | null |
assets.touch_icon_url |
string | null |
assets.preview_image_url |
string | null |
assets.manifest_url |
string | null |
assets.theme_color |
string | null |
assets.candidates[] |
object[] |
assets.candidates[] |
object |
assets.candidates[].url |
string |
assets.candidates[].kind |
string |
assets.candidates[].source |
string |
assets.candidates[].type |
string | null |
assets.candidates[].sizes |
string | null |
assets.candidates[].score |
integer |
assets.candidates[].confidence |
string |
social_profiles[] |
object[] |
social_profiles[] |
object |
social_profiles[].platform |
string |
social_profiles[].type |
string |
social_profiles[].handle |
string | null |
social_profiles[].url |
string |
social_profiles[].source |
string |
social_profiles[].confidence |
string |
confidence |
number |
evidence[] |
string[] |
meta |
object |
meta.checked_at |
string |
meta.cached |
boolean |
meta.fetch_transport |
string |
meta.fetch_error |
string |
Beispielanfrage
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/identity-assets?domain=example.com&skip_cache=1"const response = await fetch("https://domscan.net/v1/identity-assets?domain=example.com&skip_cache=1", {
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/identity-assets?domain=example.com&skip_cache=1",
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/identity-assets?domain=example.com&skip_cache=1", 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/identity-assets?domain=example.com&skip_cache=1")
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))Beispielantwort
{
"domain": "www.example.com",
"website_url": "https://www.example.com/",
"fetch_state": "ok",
"organization_name": "Example Co",
"assets": {
"logo_url": "https://www.example.com/logo.png",
"logo_kind": "logo",
"logo_source": "json_ld:logo",
"logo_verification": "verified",
"favicon_url": "https://www.example.com/favicon.ico",
"touch_icon_url": "https://www.example.com/apple-touch-icon.png",
"preview_image_url": "https://www.example.com/og.png",
"manifest_url": "https://www.example.com/site.webmanifest",
"theme_color": "#0b5fff",
"candidates": [
{
"url": "https://www.example.com/logo.png",
"kind": "logo",
"source": "json_ld:logo",
"type": null,
"sizes": null,
"score": 100,
"confidence": "high"
},
{
"url": "https://www.example.com/apple-touch-icon.png",
"kind": "touch_icon",
"source": "link:apple-touch-icon",
"type": null,
"sizes": "180x180",
"score": 80,
"confidence": "high"
},
{
"url": "https://www.example.com/favicon.ico",
"kind": "favicon",
"source": "link:icon",
"type": null,
"sizes": "48x48",
"score": 60,
"confidence": "medium"
},
{
"url": "https://www.example.com/og.png",
"kind": "preview_image",
"source": "open_graph:image",
"type": null,
"sizes": null,
"score": 30,
"confidence": "low"
}
]
},
"social_profiles": [
{
"platform": "linkedin",
"type": "social",
"handle": "example-co",
"url": "https://www.linkedin.com/company/example-co",
"source": "same_as",
"confidence": "high"
},
{
"platform": "github",
"type": "developer",
"handle": "example-co",
"url": "https://github.com/example-co",
"source": "same_as",
"confidence": "high"
}
],
"confidence": 1,
"evidence": [
"organization_name",
"structured_logo",
"asset_verified",
"declared_icon",
"declared_social_profiles"
],
"meta": {
"checked_at": "2026-10-09T10:15:30.000Z",
"cached": false,
"fetch_transport": "edge_relay"
}
}
HTTP-Statuscodes
200OK400Ungültige Anfrage401Nicht autorisiert402Zahlung erforderlich429Zu viele Anfragen502Fehlerhaftes Gateway
POST
/v1/identity-assets/bulk
Credits: 2/item
Abfrageparameter
| Parameter | Typ | erforderlich |
|---|---|---|
| dry_run |
string
Zulässige Werte
true
|
optional |
Body-Parameter
| Parameter | Typ | erforderlich |
|---|---|---|
| domains | string[] | erforderlich |
Antwortfelder
| Feld | Typ |
|---|---|
results[] |
object[] |
results[] |
object |
results[].input |
string |
results[].data |
object |
results[].error |
object |
results[].error.error |
object |
results[].error.error.code |
string |
results[].error.error.type |
string |
results[].error.error.message |
string |
results[].error.error.status |
integer |
results[].error.error.retryable |
boolean |
results[].error.error.request_id |
string |
results[].error.error.suggestion |
string |
results[].error.error.details |
object |
results[].error.error.retry_after |
integer |
results[].error.error.docs_url |
string |
meta |
object |
meta.total |
integer |
meta.succeeded |
integer |
meta.failed |
integer |
meta.unknown |
integer |
meta.max_items |
integer |
meta.credits_per_item |
integer |
meta.duration_ms |
integer |
Beispielanfrage
curl -X POST "https://domscan.net/v1/identity-assets/bulk" \
-H "Content-Type: application/json" \
-H "X-API-Key: $DOMSCAN_API_KEY" \
-d '{
"domains": [
"stripe.com",
"github.com"
]
}'const response = await fetch("https://domscan.net/v1/identity-assets/bulk", {
method: "POST",
headers: { "X-API-Key": process.env.DOMSCAN_API_KEY, "Content-Type": "application/json" },
body: JSON.stringify({
"domains": [
"stripe.com",
"github.com"
]
}),
});
const data = await response.json();
console.log(data);import os
import requests
response = requests.post(
"https://domscan.net/v1/identity-assets/bulk",
headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
json={
"domains": [
"stripe.com",
"github.com",
],
},
)
print(response.json())package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
body := strings.NewReader(`{
"domains": [
"stripe.com",
"github.com"
]
}`)
req, err := http.NewRequest(http.MethodPost, "https://domscan.net/v1/identity-assets/bulk", body)
if err != nil {
panic(err)
}
req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))
req.Header.Set("Content-Type", "application/json")
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/identity-assets/bulk")
request = Net::HTTP::Post.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")
request["Content-Type"] = "application/json"
request.body = JSON.generate({
"domains" => [
"stripe.com",
"github.com"
]
})
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))Beispielantwort
{
"results": [
{
"input": "example",
"data": {},
"error": {
"error": {
"code": "INVALID_DOMAIN",
"type": "authentication_error",
"message": "Invalid domain format",
"status": 400,
"retryable": false,
"request_id": "request-id",
"docs_url": "https://domscan.net/docs/check-availability",
"suggestion": "example",
"details": {},
"retry_after": 300
}
}
}
],
"meta": {
"total": 1,
"succeeded": 1,
"failed": 1,
"unknown": 1,
"max_items": 10,
"credits_per_item": 2,
"duration_ms": 1
}
}
HTTP-Statuscodes
200OK400Ungültige Anfrage401Nicht autorisiert402Zahlung erforderlich409HTTP 409422HTTP 422429Zu viele Anfragen
GET
/v1/identity-resolution
Credits: 2
Abfrageparameter
| Parameter | Typ | erforderlich |
|---|---|---|
| domain | string | erforderlich |
| skip_cache |
string
Zulässige Werte
1
|
optional |
Antwortfelder
| Feld | Typ |
|---|---|
cache_age_s |
integer |
query |
string |
canonical_domain |
string |
website_url |
string |
fetch_state |
string |
organization |
object |
organization.name |
string | null |
organization.description |
string | null |
identities[] |
object[] |
identities[] |
object |
identities[].platform |
string |
identities[].type |
string |
identities[].handle |
string | null |
identities[].url |
string |
identities[].source |
string |
identities[].confidence |
string |
contacts |
object |
contacts.emails[] |
string[] |
contacts.phones[] |
string[] |
confidence |
number |
evidence |
object |
evidence.declared_identity_count |
integer |
evidence.high_confidence_count |
integer |
evidence.medium_confidence_count |
integer |
evidence.sources[] |
string[] |
meta |
object |
meta.checked_at |
string |
meta.cached |
boolean |
meta.fetch_transport |
string |
meta.fetch_error |
string |
Beispielanfrage
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/identity-resolution?domain=example.com&skip_cache=1"const response = await fetch("https://domscan.net/v1/identity-resolution?domain=example.com&skip_cache=1", {
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/identity-resolution?domain=example.com&skip_cache=1",
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/identity-resolution?domain=example.com&skip_cache=1", 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/identity-resolution?domain=example.com&skip_cache=1")
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))Beispielantwort
{
"query": "example",
"canonical_domain": "example.com",
"website_url": "https://example.com",
"fetch_state": "ok",
"organization": {
"name": "example",
"description": "example"
},
"identities": [
{
"platform": "github",
"type": "social",
"url": "https://example.com",
"source": "same_as",
"confidence": "high",
"handle": "example"
}
],
"contacts": {
"emails": [
"[email protected]",
"[email protected]"
],
"phones": [
"example"
]
},
"confidence": 0.85,
"evidence": {
"declared_identity_count": 1,
"high_confidence_count": 1,
"medium_confidence_count": 1,
"sources": [
"example"
]
},
"meta": {
"checked_at": "2026-08-27T12:00:00Z",
"cached": false,
"fetch_transport": "worker",
"fetch_error": "timeout"
},
"cache_age_s": 1
}
HTTP-Statuscodes
200OK400Ungültige Anfrage401Nicht autorisiert402Zahlung erforderlich429Zu viele Anfragen502Fehlerhaftes Gateway
POST
/v1/identity-resolution/bulk
Credits: 2/item
Abfrageparameter
| Parameter | Typ | erforderlich |
|---|---|---|
| dry_run |
string
Zulässige Werte
true
|
optional |
Body-Parameter
| Parameter | Typ | erforderlich |
|---|---|---|
| domains | string[] | erforderlich |
Antwortfelder
| Feld | Typ |
|---|---|
results[] |
object[] |
results[] |
object |
results[].input |
string |
results[].data |
object |
results[].error |
object |
results[].error.error |
object |
results[].error.error.code |
string |
results[].error.error.type |
string |
results[].error.error.message |
string |
results[].error.error.status |
integer |
results[].error.error.retryable |
boolean |
results[].error.error.request_id |
string |
results[].error.error.suggestion |
string |
results[].error.error.details |
object |
results[].error.error.retry_after |
integer |
results[].error.error.docs_url |
string |
meta |
object |
meta.total |
integer |
meta.succeeded |
integer |
meta.failed |
integer |
meta.unknown |
integer |
meta.max_items |
integer |
meta.credits_per_item |
integer |
meta.duration_ms |
integer |
Beispielanfrage
curl -X POST "https://domscan.net/v1/identity-resolution/bulk" \
-H "Content-Type: application/json" \
-H "X-API-Key: $DOMSCAN_API_KEY" \
-d '{
"domains": [
"stripe.com",
"github.com"
]
}'const response = await fetch("https://domscan.net/v1/identity-resolution/bulk", {
method: "POST",
headers: { "X-API-Key": process.env.DOMSCAN_API_KEY, "Content-Type": "application/json" },
body: JSON.stringify({
"domains": [
"stripe.com",
"github.com"
]
}),
});
const data = await response.json();
console.log(data);import os
import requests
response = requests.post(
"https://domscan.net/v1/identity-resolution/bulk",
headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
json={
"domains": [
"stripe.com",
"github.com",
],
},
)
print(response.json())package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
body := strings.NewReader(`{
"domains": [
"stripe.com",
"github.com"
]
}`)
req, err := http.NewRequest(http.MethodPost, "https://domscan.net/v1/identity-resolution/bulk", body)
if err != nil {
panic(err)
}
req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))
req.Header.Set("Content-Type", "application/json")
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/identity-resolution/bulk")
request = Net::HTTP::Post.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")
request["Content-Type"] = "application/json"
request.body = JSON.generate({
"domains" => [
"stripe.com",
"github.com"
]
})
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))Beispielantwort
{
"results": [
{
"input": "example",
"data": {},
"error": {
"error": {
"code": "INVALID_DOMAIN",
"type": "authentication_error",
"message": "Invalid domain format",
"status": 400,
"retryable": false,
"request_id": "request-id",
"docs_url": "https://domscan.net/docs/check-availability",
"suggestion": "example",
"details": {},
"retry_after": 300
}
}
}
],
"meta": {
"total": 1,
"succeeded": 1,
"failed": 1,
"unknown": 1,
"max_items": 10,
"credits_per_item": 2,
"duration_ms": 1
}
}
HTTP-Statuscodes
200OK400Ungültige Anfrage401Nicht autorisiert402Zahlung erforderlich409HTTP 409422HTTP 422429Zu viele Anfragen
GET
/v1/url-intelligence
Credits: 2
Abfrageparameter
| Parameter | Typ | erforderlich |
|---|---|---|
| url | string | erforderlich |
| skip_cache |
string
Zulässige Werte
1
|
optional |
Antwortfelder
| Feld | Typ |
|---|---|
cache_age_s |
integer |
requested_url |
string |
final_url |
string |
status |
integer |
fetch_state |
string |
content_type |
string | null |
redirects |
integer |
title |
string | null |
description |
string | null |
canonical_url |
string | null |
language |
string | null |
favicon_url |
string | null |
preview_image_url |
string | null |
manifest_url |
string | null |
theme_color |
string | null |
open_graph |
object |
twitter_card |
object |
structured_data |
object |
structured_data.types[] |
string[] |
structured_data.items |
integer |
structured_data.parse_errors |
integer |
robots |
object |
robots.meta[] |
string[] |
robots.header[] |
string[] |
robots.indexable |
boolean | null |
security_headers |
object |
links |
object |
links.total |
integer |
links.internal |
integer |
links.external |
integer |
social_profiles[] |
object[] |
social_profiles[] |
object |
social_profiles[].platform |
string |
social_profiles[].type |
string |
social_profiles[].handle |
string | null |
social_profiles[].url |
string |
social_profiles[].source |
string |
social_profiles[].confidence |
string |
contacts |
object |
contacts.emails[] |
string[] |
contacts.phones[] |
string[] |
meta |
object |
meta.checked_at |
string |
meta.cached |
boolean |
meta.fetch_transport |
string |
meta.fetch_error |
string |
Beispielanfrage
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/url-intelligence?url=https%3A%2F%2Fexample.com&skip_cache=1"const response = await fetch("https://domscan.net/v1/url-intelligence?url=https%3A%2F%2Fexample.com&skip_cache=1", {
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/url-intelligence?url=https%3A%2F%2Fexample.com&skip_cache=1",
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/url-intelligence?url=https%3A%2F%2Fexample.com&skip_cache=1", 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/url-intelligence?url=https%3A%2F%2Fexample.com&skip_cache=1")
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))Beispielantwort
{
"requested_url": "https://www.example.com/",
"final_url": "https://www.example.com/",
"status": 200,
"fetch_state": "ok",
"content_type": "text/html; charset=UTF-8",
"redirects": 0,
"title": "Example Co | Simple tools for small teams",
"description": "Example Co builds simple tools for small teams.",
"canonical_url": "https://www.example.com/",
"language": "en",
"favicon_url": "https://www.example.com/favicon.ico",
"preview_image_url": "https://www.example.com/og.png",
"manifest_url": "https://www.example.com/site.webmanifest",
"theme_color": "#0b5fff",
"open_graph": {
"title": "Example Co",
"type": "website",
"url": "https://www.example.com/",
"image": "https://www.example.com/og.png"
},
"twitter_card": {
"card": "summary_large_image",
"title": "Example Co"
},
"structured_data": {
"types": [
"Organization"
],
"items": 1,
"parse_errors": 0
},
"robots": {
"meta": [
"index",
"follow"
],
"header": [],
"indexable": true
},
"security_headers": {
"content-security-policy": "default-src 'self'",
"strict-transport-security": "max-age=63072000; includeSubDomains",
"x-content-type-options": "nosniff",
"x-frame-options": "SAMEORIGIN",
"referrer-policy": "strict-origin-when-cross-origin",
"permissions-policy": null,
"cross-origin-opener-policy": null
},
"links": {
"total": 3,
"internal": 2,
"external": 1
},
"social_profiles": [
{
"platform": "linkedin",
"type": "social",
"handle": "example-co",
"url": "https://www.linkedin.com/company/example-co",
"source": "same_as",
"confidence": "high"
},
{
"platform": "github",
"type": "developer",
"handle": "example-co",
"url": "https://github.com/example-co",
"source": "same_as",
"confidence": "high"
}
],
"contacts": {
"emails": [
"[email protected]"
],
"phones": []
},
"meta": {
"checked_at": "2026-10-09T10:15:30.000Z",
"cached": false,
"fetch_transport": "edge_relay"
}
}
HTTP-Statuscodes
200OK400Ungültige Anfrage401Nicht autorisiert402Zahlung erforderlich429Zu viele Anfragen502Fehlerhaftes Gateway
POST
/v1/url-intelligence/bulk
Credits: 2/item
Abfrageparameter
| Parameter | Typ | erforderlich |
|---|---|---|
| dry_run |
string
Zulässige Werte
true
|
optional |
Body-Parameter
| Parameter | Typ | erforderlich |
|---|---|---|
| urls | string[] | erforderlich |
Antwortfelder
| Feld | Typ |
|---|---|
results[] |
object[] |
results[] |
object |
results[].input |
string |
results[].data |
object |
results[].error |
object |
results[].error.error |
object |
results[].error.error.code |
string |
results[].error.error.type |
string |
results[].error.error.message |
string |
results[].error.error.status |
integer |
results[].error.error.retryable |
boolean |
results[].error.error.request_id |
string |
results[].error.error.suggestion |
string |
results[].error.error.details |
object |
results[].error.error.retry_after |
integer |
results[].error.error.docs_url |
string |
meta |
object |
meta.total |
integer |
meta.succeeded |
integer |
meta.failed |
integer |
meta.unknown |
integer |
meta.max_items |
integer |
meta.credits_per_item |
integer |
meta.duration_ms |
integer |
Beispielanfrage
curl -X POST "https://domscan.net/v1/url-intelligence/bulk" \
-H "Content-Type: application/json" \
-H "X-API-Key: $DOMSCAN_API_KEY" \
-d '{
"urls": [
"https://example.com",
"https://github.com/about"
]
}'const response = await fetch("https://domscan.net/v1/url-intelligence/bulk", {
method: "POST",
headers: { "X-API-Key": process.env.DOMSCAN_API_KEY, "Content-Type": "application/json" },
body: JSON.stringify({
"urls": [
"https://example.com",
"https://github.com/about"
]
}),
});
const data = await response.json();
console.log(data);import os
import requests
response = requests.post(
"https://domscan.net/v1/url-intelligence/bulk",
headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
json={
"urls": [
"https://example.com",
"https://github.com/about",
],
},
)
print(response.json())package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
body := strings.NewReader(`{
"urls": [
"https://example.com",
"https://github.com/about"
]
}`)
req, err := http.NewRequest(http.MethodPost, "https://domscan.net/v1/url-intelligence/bulk", body)
if err != nil {
panic(err)
}
req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))
req.Header.Set("Content-Type", "application/json")
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/url-intelligence/bulk")
request = Net::HTTP::Post.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")
request["Content-Type"] = "application/json"
request.body = JSON.generate({
"urls" => [
"https://example.com",
"https://github.com/about"
]
})
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))Beispielantwort
{
"results": [
{
"input": "example",
"data": {},
"error": {
"error": {
"code": "INVALID_DOMAIN",
"type": "authentication_error",
"message": "Invalid domain format",
"status": 400,
"retryable": false,
"request_id": "request-id",
"docs_url": "https://domscan.net/docs/check-availability",
"suggestion": "example",
"details": {},
"retry_after": 300
}
}
}
],
"meta": {
"total": 1,
"succeeded": 1,
"failed": 1,
"unknown": 1,
"max_items": 10,
"credits_per_item": 2,
"duration_ms": 1
}
}
HTTP-Statuscodes
200OK400Ungültige Anfrage401Nicht autorisiert402Zahlung erforderlich409HTTP 409422HTTP 422429Zu viele Anfragen