All posts
RDAP domain status redemption registry policy transfers

What RDAP Status Codes Mean (Registered, Redemption, Reserved, and More)

Benchehida Abdelatif ·

A domain can be registered and still feel stuck. You see no website, yet nobody will sell it to you. Or you expect to grab a drop, but the registry will not release it.

RDAP status codes are the registry’s short language for those situations. They are not emotional labels. They are machine identifiers that registries attach to domain objects so transfers, renewals, and disputes stay consistent worldwide.

This article translates the codes you will see on BenOpt into decisions you can act on.


Quick answer

BenOpt buckets RDAP into readable outcomes: registered, unregistered, redemption, reserved, unsupported, and error.

When you need detail, read the raw status URI list in RDAP lookup. Treat scary sounding codes as prompts to ask your registrar, not as automatic rejection.


Where status codes come from

When an RDAP server returns HTTP 200 for a domain, the JSON includes a status array. Entries often look like:

  • client transfer prohibited
  • server delete prohibited
  • redemption period
  • pending delete

They may appear as full URNs (https://icann.org/epp#clientTransferProhibited) or shorthand strings depending on the registry formatter.

BenOpt passes them through so you can search the exact text in registry documentation.


Registered: the default active object

What it means

The registry knows the name. Someone holds a registration period. DNS might be full, empty, or parked.

What to do

If you want to buy it, you are in acquisition mode: broker, backorder, or direct outreach. Availability tools will not register it for you.

Related tool

Confirm dates and registrar in RDAP lookup.


Unregistered: no registry object

What it means

RDAP returned not found (often HTTP 404). The name is not in the registry database right now.

What to do

This is a strong signal for availability, not a promise. Run a registrar cart check for premium tiers and reserved lists.

Stack with DNS: see how to use DNS and RDAP together.


Redemption: the grace window after expiry

What it means

The prior registrant still has a recovery path. The name is not open for fresh registration yet.

What to do

If you are the prior owner, talk to your registrar immediately. If you are a buyer, wait or negotiate with whoever can restore it.

BenOpt surfaces redemption when status strings include redemption language and may still show an expiry event.


Reserved: registry-held names

What it means

The registry blocked general registration. Sometimes the name is policy reserved. Sometimes it is premium inventory.

What to do

Read the registry’s premium or reserved name policy. Do not assume standard pricing.


Unsupported and error: when RDAP cannot answer

Unsupported

The TLD has no RDAP entry in the IANA bootstrap BenOpt uses. Try the registry’s own portal.

Error

Timeouts, HTTP 429 rate limits, or broken upstream servers. Retry later. Do not treat error as “free.”


Common EPP-style phrases decoded in plain English

Phrase you might seePlain meaning
clientTransferProhibitedRegistrar lock to stop outbound transfers
serverTransferProhibitedRegistry-level transfer block
pendingDeleteScheduled removal after expiry workflow
pendingTransferTransfer in flight
inactiveRegistered but not always published in DNS

Exact strings vary by TLD. Use the URI list from your lookup as the source of truth.


How status interacts with DNS

Status describes registry policy. DNS describes published records.

You can have:

  • clientTransferProhibited plus active MX mail
  • registered status plus zero DNS records
  • quiet DNS while redemption ticks

That is why BenOpt keeps both DNS tools and RDAP tools in the same toolbox.


Lifecycle story in plain language

Think of a domain like a library book:

  1. On shelf (registered, active) normal loans and renewals
  2. Overdue (expired but grace) still tied to the old cardholder
  3. Redemption desk expensive recovery window
  4. Pending delete about to return to the shelf for new borrowers
  5. Not in catalog (unregistered) free for a new card if policy allows

Status URIs are how the librarian encodes which desk currently holds the book. BenOpt translates the desk name. Your registrar moves the book between desks when you pay or forget to pay.


When to screenshot status URIs for a ticket

Open a registrar ticket when you see:

  • server prefixed codes you did not enable
  • pendingTransfer stuck more than a week
  • redemption language you do not understand on a name you still own

Paste the exact URI list from RDAP lookup. Support teams move faster with registry vocabulary than with “your site says locked.”


ccTLD quirks worth expecting

Country code registries sometimes expose shorter status vocabularies or local policy flags that do not map cleanly to gTLD examples. When a status string looks unfamiliar, search the registry’s RDAP documentation PDF rather than guessing.

BenOpt still shows the raw URI so you can paste it into support tickets. The high-level bucket (registered, redemption, reserved) remains your orientation map.


FAQ

Should I panic at transfer prohibited?

Usually no. Many registrars enable locks by default. It is normal on names you already own.

Does redemption mean I can backorder today?

Not yet. Redemption is before the name returns to the open pool, if it ever does.

Why does BenOpt show registered but also list redemption language?

Some registries expose multiple statuses at once during lifecycle transitions. Read expiry and talk to a registrar.


What to do next

Pick one confusing name. Run RDAP lookup, copy the status URI list into your notes, and call your registrar with those exact strings if you need help.

For lifecycle timing, read domain expiry dates: RDAP vs registrar.

BenOpt reflects live registry responses. Policies change. When money is on the line, confirm with the registry or registrar named in the lookup.

Look up registry data

Paste a hostname and read registrar, status codes, and key dates in plain cards.

Open RDAP lookup