Callook.info API
Free US amateur radio callsign lookup with no key: licensee name, address, grid square, coordinates, licence class and expiry from the FCC ULS database. Tested example.
Endpoint tested and returned HTTP 200 on 2026-08-21
What is the Callook.info API?
Callook.info is a free API over the FCC's Universal Licensing System that resolves any US amateur radio callsign to its licensee name, mailing address, latitude and longitude, Maidenhead grid square, licence class, grant and expiry dates and FCC registration number. No key is required.
American amateur radio licences are public record, and Callook makes that record queryable with a URL as simple as `/W1AW/json`. What you get back is more useful than the raw FCC data: the address is already parsed into lines, and the location block carries decimal latitude and longitude plus the Maidenhead grid square — the six-character locator hams actually exchange on air — which the FCC database does not itself provide.
The `status` field is the first thing to read. `VALID` means an active licence; anything else means the callsign is not currently licensed and the rest of the response will be thin. Club stations, like the ARRL headquarters station in the example, carry `type: "CLUB"` and a `trustee` block naming the individual responsible, which individual licences do not have. The `previous` block records a former callsign where the holder upgraded to a vanity call, letting you follow an operator's identity across changes. Dates come as US-format `MM/DD/YYYY` strings, so parse explicitly rather than letting a locale guess.
Quick facts
- Base URL
https://callook.info- Authentication
- No API key or registration. Callook is a community service over public FCC records.
- Rate limit
- No published limit. It is run by a volunteer — cache lookups rather than querying repeatedly for the same call.
- Pricing
- Free. The underlying FCC ULS data is public record.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the Callook.info API
Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.
1. Look up a US amateur radio callsign
GET https://callook.info/W1AW/json
curl 'https://callook.info/W1AW/json'const res = await fetch("https://callook.info/W1AW/json");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://callook.info/W1AW/json", timeout=20)
res.raise_for_status()
print(res.json()){
"status": "VALID",
"type": "CLUB",
"current": {
"callsign": "W1AW",
"operClass": ""
},
"previous": {
"callsign": "",
"operClass": ""
},
"trustee": {
"callsign": "NA2AA",
"name": "Minster, David A"
},
"name": "ARRL HQ OPERATORS CLUB",
"address": {
"line1": "225 MAIN ST",
"line2": "NEWINGTON, CT 06111",
"attn": "ATTN: David A Minster"
},
"location": {
"latitude": "41.714707",
"longitude": "-72.728411",
"gridsquare": "FN31pr"
},
"otherInfo": {
"grantDate": "12/08/2020",
"expiryDate": "02/26/2031",
"lastActionDate": "03/12/2026",
"frn": "0004511143",
"ulsUrl": "https://wireless2.fcc.gov/UlsApp/UlsSearch/license.jsp?licKey=780866"
}
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
{callsign} | path | Required | The callsign to look up, case-insensitive. W1AW |
{format} | path | Required | `json` for structured output, or omit for HTML. json |
Response fields
statusstring- `VALID` for an active licence. Check this before reading anything else.
typestring- `CLUB` for club stations, with individual types for personal licences.
current.callsign / operClassstring- Present callsign and licence class — Technician, General, Extra. Empty for club stations.
previous.callsignstring- Former callsign where the holder took a vanity call. Empty otherwise.
trusteeobject- For club stations, the responsible individual's callsign and name. Absent on individual licences.
namestring- Licensee name, which for a club is the organisation.
addressobject- `line1`, `line2` and an optional `attn` line, already parsed.
locationobject- Decimal `latitude` and `longitude` plus the Maidenhead `gridsquare` — derived, not raw FCC data.
otherInfoobject- `grantDate`, `expiryDate` and `lastActionDate` as `MM/DD/YYYY` strings, plus the FCC `frn` and a ULS link.
What you can build with the Callook.info API
- Auto-fill a contact log from a callsign
- Plot stations on a map from their grid squares
- Check whether a licence is current before a contest submission
- Resolve a vanity callsign back to its previous identity
- Build a callsign validation step into a club membership form
Common errors and how to fix them
status is not VALID
The callsign is expired, cancelled or was never issued.
Fix: Branch on `status` before reading the rest; an invalid response has mostly empty fields rather than an error code.
Dates parse incorrectly
They are US-format `MM/DD/YYYY` strings.
Fix: Parse with an explicit format rather than letting a locale-sensitive parser guess.
No trustee field
The licence belongs to an individual, not a club.
Fix: Check `type` first — `trustee` only exists on club licences.
Non-US callsign returns nothing
Callook covers the FCC database only.
Fix: Use a national regulator's own service for callsigns outside the United States.
Callook.info API — frequently asked questions
Is the Callook API free?
Yes, no key and no registration. It is a volunteer-run service over public FCC licensing records, so cache your lookups rather than hammering it.
Where does the data come from?
The FCC's Universal Licensing System, the official register of US radio licences. Callook parses it and adds derived values such as the Maidenhead grid square.
What is a grid square?
A Maidenhead locator — a compact code such as `FN31pr` identifying a rectangle on the earth's surface. Amateur radio operators exchange them on air, and Callook computes one from the licensee's coordinates.
Does it cover callsigns outside the United States?
No. It queries the FCC database only, so international callsigns return nothing. Each country's regulator publishes its own register, with varying degrees of public access.
Tools that pair with this API
Coordinate Converter
Convert GPS coordinates between decimal degrees, degrees-minutes-seconds and decimal minutes instantly. Paste any format like 40°26'46"N and copy the result.
Geohash Encoder
Convert latitude and longitude to a geohash at any precision from 1 to 12 characters, with the ground size of each cell shown alongside.
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
Callook.info is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.