Revised

Get one domain

One listing by id. Carries its real name where you are entitled to it — see the `domain` field. 404 once a listing leaves the directory, and 404 as well while a listing is newer than your plan's access delay.

GET/api/v1/domains/{id}

One listing by id. Carries its real name where you are entitled to it — see the `domain` field. 404 once a listing leaves the directory, and 404 as well while a listing is newer than your plan's access delay.

Authorizations

Authorizationstringheaderrequired

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path parameters

idstringrequired

A listing id, exactly as the feed issued it: eight characters, CASE-SENSITIVE — `00aLaXEG`, not `00alaxeg`.

Example: 00aLaXEG

Responses

The listing.

age_yearsany

Whole years from the earliest archive capture we hold for the name to now. It is a FLOOR on the name's history, not its registration age and not the age of its last registration: we hold a sample of captures, so a name archived since earlier can read younger, most of all where only one capture is held. Null when we hold no capture.

agent_citabilityany

Agent Citability (preview) score and the AI-cited sources that link to the domain. Null when the domain has no row in the current index — not a score of zero. Listing scores refresh between releases as new link data arrives, and can rise or fall. `basis` says what the score rests on: `seed_links` means AI-cited sources link to the domain and are listed in `sources`; `link_graph` means none do, `sources` is genuinely empty, and the score reflects the domain's position in the link graph alone (it cannot exceed 70).

availability_checked_atstring (date-time)

When we last checked that the name is unregistered. Revealing a name in the directory re-checks it on the spot; exports and this API carry the last-checked stamp rather than triggering a check of their own, so read this timestamp before acting on the row.

backlinksany

Banded total backlinks.

categoryany
discovered_atstring (date-time)required

When this listing entered the directory. Written once and never rewritten, which is what `sort=latest` orders by and what makes that ordering safe to page. It is a fact about this directory, not about the domain: it is neither the registration date nor the date the name expired.

domainanyrequired

The registrable name, or NULL where it is withheld. TWO INDEPENDENT REASONS it can be null, and you cannot tell them apart from this field alone. (1) Another account holds the listing (`hold_state: "other"`) — a hold masks the name for every reader, and an unlimited reveal allowance is not an exemption from one; it comes back when their hold ends, and `hold_expires_at` says when. (2) Your plan has a monthly reveal ceiling and you have not revealed this listing: you receive names on the open tier (`tier: "open"`, published on the site anyway) and on anything you have already revealed, and a mask on the rest. `POST /domains/{id}/reveal` buys one. On a plan with no ceiling, only reason (1) applies. `mask_hint` is populated either way and is what to render. Read `tier` before republishing: only an `open` name is public.

enriched_atany

When our pipeline last found something new about this listing — site history, category, linking sites, or the referring-domain or age band — or null if nothing has changed since `discovered_at`. Not moved by a status change, a Revised Score shift, a tier change or an availability re-check. Freshness, newly listed or newly enriched, is the later of this and `discovered_at`. NOT a sync watermark: use `updated_at` and `since` for that, and do not page on this — it moves.

estimated_value_bandstringrequired

A coarse estimated-value range, e.g. `$250 to $999`, on EVERY row for EVERY plan, masked rows included. The same buckets the `priceRange` filter uses, so a filter and the band it returns agree. Nothing here is for sale.

estimated_value_centsanyrequired

The exact estimated value in cents: the valuation model's low bound, falling back to the reference figure on a row the model has not valued. PAID PLANS ONLY (Starter, Business), and only where the name is disclosed to you (`name_disclosed: true`). NULL on the Free plan for every row, open listings included, and null on any row whose name is withheld. `estimated_value_band` is the coarse range for everyone. An exact figure beside a TLD and length bucket would let a valuation tool unmask a withheld name. Nothing here is for sale.

featuredboolean
hold_expires_atany

When the active hold on this listing ends. Null when nothing is holding it.

hold_state"none" | "mine" | "other"required

`none`, `mine` (held by this key's account) or `other`. A held listing stays in the directory and stays listed here; what a hold reserves is the right to take it, inside Revised. Who holds it is never disclosed. NOTE: taking, extending or ending a hold does not move `updated_at`, so an incremental `since` poll will not re-deliver a row whose hold state changed — read the listing directly, or `GET /holds` for your own.

Available options: none, mine, other

idstringrequired

Eight characters, CASE-SENSITIVE and mixed case in practice (`00aLaXEG`, `X00w46xl`). Store it verbatim: lower-casing one will not match on the way back.

length_bucketstring
linked_fromstring[]

The sites we track that link to this domain (the Linked from list on the listing page), strongest first, by display name (`Wikipedia`, `Hacker News`). Every known site, not a sample. Empty when none are known. `linked_from_count` is the headline figure.

linked_from_countany

How many sites we track link to this domain, or null when none are known. Absent data, never a zero. Filter with `linkedFromMin`.

mask_hintanyrequired

The public partial mask, e.g. `g▓▓▓▓▓▓farms` — true length, first letter, last word, hyphens. Always present, and the thing to render when `domain` is null. Null only for rows predating the mask backfill; `length_bucket` is the fallback shape.

metrics_missingstring[]required

Which of this row's optional metrics are NULL, by the key they are published under: `age_years`, `agent_citability`, `backlinks`, `category`. A null among those is ABSENT DATA, never a zero — an unscored domain is not a score-0 domain — and the distinction is otherwise invisible in JSON. Empty when the row is complete. Note that the `min_*` filters exclude null rows rather than ranking them low, so a mild-looking floor can drop most of a page.

name_disclosedbooleanrequired

Whether `domain` holds a real registrable name. The same predicate `domain` itself is built from, so the two cannot disagree — false means `domain` is null and `mask_hint` is what to render. This is the discriminator; `mask_hint` is NOT, because it is populated on every row whether or not anything is masked. It is also not a reveal: on a plan with no reveal ceiling every name is disclosed without one having been bought.

referring_domainsany

Banded referring-domain count.

revised_scoreobject

The Revised Score band, low to high. Kept for existing clients; `revised_score_exact` carries the score itself.

revised_score_exactinteger

The Revised Score, 0 to 100: a percentile blend of link-graph centrality, referring domains and site history, relative to the whole directory, plus up to 15 points for real visitor traffic (see `visitor_traffic`). It moves as the directory and its inputs update.

snapshotsstring

Banded archive snapshot count, e.g. `40+`.

statusstringrequired

Always `active` on a full row. Branch on this to tell a listing from a tombstone.

tier"featured" | "regular" | "open"required

Which shelf this listing sits on, and the only field that says whether its `domain` is PUBLIC. `open` means the name is already published on the site, in the listing page's title and in the sitemap, so you may republish it. `regular` and `featured` names are masked everywhere on the site and are disclosed to you under the API terms only — do not republish them. `featured` additionally means the curated shelf; it is not the same thing as the `featured` boolean, which reads the shelf rank and can disagree.

Available options: featured, regular, open

tldstringrequired
updated_atstring (date-time)required

Feed watermark. What `since` filters on, and the version of this row: with `id` it is what makes a repeated row safe to ignore.

visitor_trafficany

How popular the site was with real visitors while it was live, from the monthly global top-1M list of the sites browser users visit (monthly since 2021-02). `best_rank_bucket` is the best bucket it ever held (1000 = a top-1k site; 1000, 10000, 100000 or 1000000), `months_present` how many months it was on the list, and `first_seen` / `last_seen` the first and last month (`YYYY-MM`). Released under exactly the rule that releases `domain`: null whenever `name_disclosed` is false, because on a masked row these figures would identify the name. Where `name_disclosed` is true, null means the site was never on the list — not zero traffic.

visitor_traffic_bandany

A coarse visitor-traffic band, on EVERY row whatever `name_disclosed` says: `rank_bucket` is 100000 when the site's best month was inside the top 100k (a top-1k site included) and 1000000 when it only reached the top 1M; `sustained` is true when it spent 12 or more months on the list. Deliberately no finer than that, so it can sit on a masked row. Null means the site was never on the list, not zero traffic.

word_countinteger
curl --request GET \
  --url "https://getrevised.com/api/v1/domains/00aLaXEG" \
  --header "Authorization: Bearer YOUR_API_KEY"
{
  "age_years": {},
  "agent_citability": {
    "basis": "seed_links",
    "score": 123,
    "sources": []
  },
  "availability_checked_at": "2023-11-07T05:31:56Z",
  "backlinks": {},
  "category": {},
  "discovered_at": "2023-11-07T05:31:56Z",
  "domain": {},
  "enriched_at": {},
  "estimated_value_band": "$250 to $999",
  "estimated_value_cents": {},
  "featured": true,
  "hold_expires_at": {},
  "hold_state": "none",
  "id": "<string>",
  "length_bucket": "<string>",
  "linked_from": [],
  "linked_from_count": {},
  "mask_hint": {},
  "metrics_missing": [],
  "name_disclosed": true,
  "referring_domains": {},
  "revised_score": {
    "high": 123,
    "low": 123
  },
  "revised_score_exact": 123,
  "snapshots": "<string>",
  "status": "<string>",
  "tier": "featured",
  "tld": "<string>",
  "updated_at": "2023-11-07T05:31:56Z",
  "visitor_traffic": {
    "best_rank_bucket": 1000,
    "first_seen": "<string>",
    "label": "<string>",
    "last_seen": "<string>",
    "monthly": "<string>",
    "months_present": 123
  },
  "visitor_traffic_band": {
    "label": "<string>",
    "rank_bucket": 100000,
    "sustained": true
  },
  "word_count": 123
}

Type to search…

↑↓ navigate↵ openesc close