Skip to content

Instantly share code, notes, and snippets.

@bkilshaw
Last active November 15, 2023 19:22
Show Gist options
  • Star 9 You must be signed in to star a gist
  • Fork 9 You must be signed in to fork a gist
  • Save bkilshaw/3624901 to your computer and use it in GitHub Desktop.
Save bkilshaw/3624901 to your computer and use it in GitHub Desktop.
MACVendors.com API :: PHP GET Example
<?php
$mac_address = "FC:FB:FB:01:FA:21";
$url = "https://api.macvendors.com/" . urlencode($mac_address);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
if($response) {
echo "Vendor: $response";
} else {
echo "Not Found";
}
?>
@Pablohn26
Copy link

Now this gist get a 301 due to the use of HTTP.

To get this gist working, you have to change on line 4 http by https

@ehaupt
Copy link

ehaupt commented Sep 26, 2020

A python solution using netaddr:

#!/usr/bin/env python

import sys
from netaddr import EUI

print(EUI(sys.argv[1]).oui.registration().org)

Accepts multiple known mac formats.

$ maclookup.py FC-A1-3E-2A-1C-33
Samsung Electronics Co.,Ltd
$ ./maclookup.py FC:A1:3E:2A:1C:33
Samsung Electronics Co.,Ltd
$ ./maclookup.py fc:a1:3e:2a:1c:33
Samsung Electronics Co.,Ltd
$ ./maclookup.py fca13e2a1c33
Samsung Electronics Co.,Ltd

@buananetpbun
Copy link

can use with javascript?

@keslar
Copy link

keslar commented Nov 15, 2023

Here is a PowerShell version:

mac_address = "FC:FB:FB:01:FA:21"
$url    = "https://api.macvendors.com/$([URI]::EscapeUriString($mac_address))"
$response = Invoke-RestMethod -Method GET -Uri $url
if ( $null -ne $response ) {
   "Vendor: $($response)"
} else {
   "Vendor not found for the MAC address $($mac_address)."
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment