Exemplo de requisição
cURL Node.js Python Go Ruby
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/social/info"const response = await fetch("https://domscan.net/v1/social/info", {
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/social/info",
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/social/info", 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/social/info")
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))
Exemplo de resposta {
"endpoint": "/v1/social",
"description": "Check if a username is available on supported social platforms.",
"parameters": {
"handle": {
"type": "string",
"required": true,
"description": "Username to check"
},
"platforms": {
"type": "string",
"required": false,
"description": "Comma-separated platform list",
"example": "github,gitlab,reddit"
},
"resources": {
"type": "string",
"required": false,
"description": "Comma-separated resource type list",
"example": "github:repository"
}
},
"bulk": {
"endpoint": "/v1/social/bulk",
"method": "POST",
"max_handles": 10,
"credits_per_handle": 2,
"pricing_formula": "valid_handle_count * credits_per_handle",
"bulk_discount": false,
"invalid_handles_charged": false,
"partial_results": true,
"parameters": {
"handles": {
"type": "array",
"required": true,
"min_items": 1,
"max_items": 10
},
"platforms": {
"type": "array",
"required": false
},
"resources": {
"type": "array",
"required": false
}
},
"example_request": {
"handles": [
"mycompany",
"myproduct"
],
"platforms": [
"github",
"reddit",
"youtube"
]
}
},
"platforms": {
"supported": [
"github",
"gitlab",
"bitbucket",
"devto",
"huggingface",
"dribbble",
"soundcloud",
"gumroad",
"buymeacoffee",
"substack",
"itchio",
"behance",
"dockerhub",
"hashnode",
"rubygems",
"hackernews",
"reddit",
"bluesky",
"twitter",
"instagram",
"facebook",
"threads",
"pinterest",
"snapchat",
"telegram",
"twitch",
"patreon",
"tiktok",
"youtube",
"linkedin",
"steam",
"tumblr",
"vimeo",
"letterboxd",
"linktree",
"kick",
"medium",
"mastodon",
"roblox",
"minecraft",
"chesscom",
"lichess",
"npm",
"discord"
],
"coming_soon": [],
"experimental": [],
"planned": [],
"blocked": [],
"details": [
{
"id": "github",
"display_name": "GitHub",
"aliases": [
"github"
],
"category": "developer",
"tier": 0,
"status": "live",
"method": "official_api",
"confidence": "high",
"logo_key": "github",
"profile_url_template": "https://github.com/{handle}",
"docs_anchor": "github",
"caveat_codes": [],
"cache_ttl_s": {
"available": 300,
"taken": 3600,
"unknown": 60,
"rate_limited": 60
},
"handle_rules": {
"min_length": 1,
"max_length": 39,
"description": "1-39 chars, alphanumeric and hyphens, cannot start/end with hyphen"
}
}
]
},
"resource_types": {
"supported": [
"reddit:subreddit",
"discord:invite",
"github:repository",
"gitlab:project",
"dockerhub:repository",
"activitypub:account",
"substack:profile"
]
},
"example_request": "/v1/social?handle=myusername&platforms=github,gitlab,reddit",
"resource_example_request": "/v1/social?handle=github/docs&resources=github:repository",
"example_response": {
"handle": "myusername",
"checked_at": "2026-07-14T12:00:00Z",
"availability": {
"github": {
"available": true,
"profile_url": null,
"checked": true,
"requested": true
},
"reddit": {
"available": false,
"profile_url": "https://reddit.com/user/myusername",
"checked": true,
"requested": true
},
"gitlab": {
"available": true,
"profile_url": null,
"checked": true,
"requested": true
}
},
"resources": {},
"resource_summary": {
"requested_count": 0,
"checked_count": 0,
"present_count": 0,
"absent_count": 0,
"unknown_count": 0,
"cached_count": 0,
"determinacy_rate": 0
},
"summary": {
"available_count": 2,
"unavailable_count": 1,
"unknown_count": 0
},
"summary_v2": {
"requested_count": 3,
"checked_count": 3,
"available_count": 2,
"unavailable_count": 1,
"unknown_count": 0,
"not_supported_count": 0,
"determinacy_rate": 1
}
}
}
Códigos de status HTTP
200 OK401 Não autorizado429 Demasiados pedidos
Disponibilidade de Nomes em Redes Sociais
Verifique se um nome de utilizador está disponível em plataformas de redes sociais principais.
Parâmetros de consulta
Exemplo de resposta
Campos da resposta
handlechecked_atavailabilityresourcesresource_summaryresource_summary.requested_countresource_summary.checked_countresource_summary.present_countresource_summary.absent_countresource_summary.unknown_countresource_summary.cached_countresource_summary.determinacy_ratesummarysummary.available_countsummary.unavailable_countsummary.unknown_countsummary_v2summary_v2.requested_countsummary_v2.checked_countsummary_v2.available_countsummary_v2.unavailable_countsummary_v2.unknown_countsummary_v2.not_supported_countsummary_v2.determinacy_rateplatform_summaryplatform_summary.requested_countplatform_summary.checked_countplatform_summary.available_countplatform_summary.unavailable_countplatform_summary.unknown_countplatform_summary.not_supported_countplatform_summary.cached_countplatform_summary.high_confidence_countplatform_summary.live_platform_countplatform_summary.experimental_countplatform_summary.blocked_countplatform_summary.beta_limited_countplatform_summary.determinacy_rateplatform_summary.method_countsplatform_summary.source_countsbeta_noticemetameta.served_bymeta.supported_platforms[]meta.supported_resources[]meta.unsupported_platforms[]meta.latency_msVerifique identidades específicas, como repositórios, subreddits, convites do Discord, perfis do Substack e contas federadas, sem mudar de endpoint.
Sim. Envie até 10 nomes de usuário para POST /v1/social/bulk, com uma lista opcional de plataformas. As verificações em massa usam a mesma tarifa de créditos por nome de usuário que as verificações individuais.
Parâmetros de consulta
trueParâmetros do corpo
Campos da resposta
results[]summarysummary.totalsummary.succeededsummary.failedbeta_noticemetameta.served_bymeta.platforms[]meta.resources[]meta.max_handlesmeta.credits_per_handlemeta.credits_requiredmeta.latency_msExemplo de requisição
Exemplo de resposta
Códigos de status HTTP
200OK400Pedido inválido401Não autorizado402Pagamento necessário409HTTP 409422HTTP 422429Demasiados pedidosCampos da resposta
endpointdescriptionparametersbulkbulk.endpointbulk.methodbulk.max_handlesbulk.credits_per_handlebulk.pricing_formulabulk.bulk_discountbulk.invalid_handles_chargedbulk.partial_resultsbulk.parametersbulk.example_requestplatformsplatforms.supported[]platforms.coming_soon[]platforms.experimental[]platforms.planned[]platforms.blocked[]platforms.details[]platforms.details[]platforms.details[].idplatforms.details[].display_nameplatforms.details[].aliases[]platforms.details[].categoryplatforms.details[].tierplatforms.details[].statusplatforms.details[].methodplatforms.details[].confidenceplatforms.details[].logo_keyplatforms.details[].profile_url_templateplatforms.details[].docs_anchorplatforms.details[].caveat_codes[]platforms.details[].cache_ttl_splatforms.details[].cache_ttl_s.availableplatforms.details[].cache_ttl_s.takenplatforms.details[].cache_ttl_s.unknownplatforms.details[].cache_ttl_s.rate_limitedplatforms.details[].handle_rulesplatforms.details[].handle_rules.min_lengthplatforms.details[].handle_rules.max_lengthplatforms.details[].handle_rules.descriptionresource_typesresource_types.supported[]resource_types.details[]resource_types.details[]example_requestresource_example_requestexample_responseExemplo de requisição
Exemplo de resposta
Códigos de status HTTP
200OK401Não autorizado429Demasiados pedidosParâmetros de consulta
Campos da resposta
namestatuschecked_atverdictscoredeterminacysummarysummary.com_availablesummary.domainssummary.domains.checkedsummary.domains.freesummary.domains.takensummary.domains.unknownsummary.handlessummary.handles.checkedsummary.handles.freesummary.handles.takensummary.handles.unknownsummary.packagessummary.packages.checkedsummary.packages.freesummary.packages.takensummary.packages.unknowndomains[]domains[]domains[].domaindomains[].tlddomains[].statusdomains[].reasonhandles[]handles[]handles[].platformhandles[].statushandles[].urlhandles[].reasonpackages[]packages[]packages[].registrypackages[].namepackages[].statuspackages[].urlpackages[].reasonmetameta.duration_msExemplo de requisição
Exemplo de resposta
Códigos de status HTTP
200OK400Pedido inválido401Não autorizado402Pagamento necessário429Demasiados pedidos