مرجع API

API الخاص بـ واجهة برمجة البحث عن الصور الشخصية والشعارات

اعثر على صورة ملف شخصي موثّقة لبريد إلكتروني أو اسم مستخدم، أو على شعار لنطاق. استخدم هذا المرجع لاختيار عملية ودمج عقد الاستجابة الموثق.

العمليات

GET /v1/avatar عرض مرجع API

GET /v1/avatar

العملية: getAvatar الوحدات والمصادقة: 2 المصادقة مطلوبة
GET /v1/avatar الرصيد: 2

معاملات الاستعلام

المعامل النوع مطلوب
email string اختياري
username string اختياري
platform string
القيم المسموحة githubblueskymastodonkeybase
اختياري
domain string اختياري

حقول الرد

الحقل النوع
cache_age_s integer
input object
input.type string
input.value string
input.platform string | null
avatar object
avatar.url string
avatar.source string
avatar.kind string
avatar.verified boolean
avatar.content_type string | null
avatar.width integer
avatar.height integer
avatar.profile_url string | null
candidates[] object[]
candidates[] object
candidates[].source string
candidates[].kind string
candidates[].status string
candidates[].reason string
candidates[].detail string
candidates[].url string | null
candidates[].verified boolean
candidates[].content_type string | null
candidates[].width integer
candidates[].height integer
candidates[].profile_url string | null
candidates[].may_be_generated boolean
status string
classification object
classification.status string
classification.reason string
classification.evidence object
classification.evidence.source string
classification.evidence.method string
classification.evidence.observed_at string
classification.evidence.detail string
classification.checked_at string
checked_at string
meta object
meta.cached boolean
meta.sources_checked integer

طلب مثال

curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/avatar?email=user%40example.com&username=example&platform=github&domain=example.com"
const response = await fetch("https://domscan.net/v1/avatar?email=user%40example.com&username=example&platform=github&domain=example.com", {
  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/avatar?email=user%40example.com&username=example&platform=github&domain=example.com",
    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/avatar?email=user%40example.com&username=example&platform=github&domain=example.com", 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/avatar?email=user%40example.com&username=example&platform=github&domain=example.com")
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))

مثال الرد

{
  "input": {
    "type": "username",
    "value": "octocat",
    "platform": null
  },
  "avatar": {
    "url": "https://cdn.bsky.app/img/avatar/plain/did:plc:example/bafkreiexample",
    "source": "bluesky",
    "kind": "avatar",
    "verified": true,
    "content_type": "image/jpeg",
    "profile_url": "https://bsky.app/profile/octocat.bsky.social"
  },
  "candidates": [
    {
      "source": "github",
      "kind": "avatar",
      "status": "present",
      "detail": "image_verified",
      "url": "https://avatars.githubusercontent.com/u/583231?v=4",
      "verified": true,
      "content_type": "image/png",
      "profile_url": "https://github.com/octocat",
      "may_be_generated": true
    },
    {
      "source": "bluesky",
      "kind": "avatar",
      "status": "present",
      "detail": "image_verified",
      "url": "https://cdn.bsky.app/img/avatar/plain/did:plc:example/bafkreiexample",
      "verified": true,
      "content_type": "image/jpeg",
      "profile_url": "https://bsky.app/profile/octocat.bsky.social"
    },
    {
      "source": "mastodon",
      "kind": "avatar",
      "status": "absent",
      "detail": "account_not_found",
      "url": null,
      "verified": false,
      "content_type": null
    },
    {
      "source": "keybase",
      "kind": "avatar",
      "status": "unknown",
      "reason": "rate_limited",
      "detail": "http_429",
      "url": null,
      "verified": false,
      "content_type": null
    }
  ],
  "status": "present",
  "classification": {
    "status": "present",
    "evidence": {
      "source": "bluesky",
      "method": "image_probe",
      "observed_at": "2026-11-02T10:00:00.000Z",
      "detail": "image_verified"
    },
    "checked_at": "2026-11-02T10:00:00.000Z"
  },
  "checked_at": "2026-11-02T10:00:00.000Z",
  "meta": {
    "cached": false,
    "sources_checked": 4
  }
}

رموز حالة HTTP

  • 200 OK
  • 400 طلب غير صالح
  • 401 غير مصرح
  • 402 الدفع مطلوب
  • 429 طلبات كثيرة جداً

موارد المرجع