Who it is for
Use the suite for troubleshooting, migration checks, infrastructure research, and security review.
Try a product, outcome, endpoint path, or API topic.
Look up manufacturer information for a MAC address.
Look up manufacturer information for a MAC address.
Use the suite for troubleshooting, migration checks, infrastructure research, and security review.
Choose this to map a MAC address prefix to published vendor-allocation evidence, not to identify a device owner.
Look up manufacturer information for a MAC address.
Review the supported operations, inputs, outputs, execution modes, and response limits before integrating.
0-1 Authentication required. Check the operation reference for the exact cost and any per-item pricing.
Use documented operations to collect, assess, enrich, verify, compare, protect, or monitor public evidence.
| Parameter | Type | required |
|---|---|---|
| mac | string | required |
| Field | Type |
|---|---|
mac |
string |
input |
string |
type |
string |
oui |
string |
device_id |
string |
flags |
object |
flags.multicast |
boolean |
flags.locally_administered |
boolean |
flags.broadcast |
boolean |
vendor |
object |
vendor.name |
string | null |
vendor.found |
boolean |
vendor.organization |
string | null |
vendor.address |
string | null |
vendor.country |
string | null |
vendor.device_type |
string | null |
vendor.source |
string |
vendor.cached |
boolean |
vendor.cache_age_s |
integer | null |
vendor.checked_at |
string |
meta |
object |
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/mac?mac=00%3A1A%3A2B%3A3C%3A4D%3A5E"const response = await fetch("https://domscan.net/v1/mac?mac=00%3A1A%3A2B%3A3C%3A4D%3A5E", {
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/mac?mac=00%3A1A%3A2B%3A3C%3A4D%3A5E",
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/mac?mac=00%3A1A%3A2B%3A3C%3A4D%3A5E", 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/mac?mac=00%3A1A%3A2B%3A3C%3A4D%3A5E")
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)){
"mac": "00:1A:2B:3C:4D:5E",
"input": "00:1A:2B:3C:4D:5E",
"type": "eui-48",
"oui": "00:1A:2B",
"device_id": "3C:4D:5E",
"flags": {
"multicast": false,
"locally_administered": false,
"broadcast": false
},
"vendor": {
"name": "Ayecom Technology Co., Ltd.",
"found": true,
"source": "live",
"cached": false,
"checked_at": "2026-10-09T10:15:30.000Z"
},
"meta": {
"served_by": "pop=MAD country=ES",
"latency_ms": 184
}
}
200 OK400 Bad Request401 Unauthorized402 Payment Required429 Too Many Requests503 Service UnavailableUse the API reference for MAC Address Lookup to review parameters, response fields, examples, status codes, and supported operation modes.
Unknown or partial results mean that the requested evidence could not be fully determined. Keep the result state, confidence, freshness, and limitations in downstream decisions.
Pricing depends on the operation and execution mode. Check the endpoint reference for the current credit cost, authentication requirement, and per-item rules.
Used by people at these companies