Skip to main content

4. Responding to Searches

This section preserves the RFC text for RDAP RIR search, including rirSearch1, ips, autnums, ipSearchResults, autnumSearchResults, relation links, JSON examples, response behavior, reverse search, conformance, and IANA registrations.

Original RFC Text

4.  Responding to Searches

4.1. Single-Result Searches

The "rdap-up" and "rdap-top" relations are single-result searches.
When processing these searches, if there is a result for the search,
the server returns that object as though it were requested directly
via a lookup URL (see Section 3.1 of [RFC9082]). If there is no
result for the search, the server returns an HTTP 404 (Not Found)
[RFC9110] response code.

4.2. Multiple-Result Searches

The "rdap-down" and "rdap-bottom" relations are multiple-result
searches. As with [RFC9083], responses for these searches take the
form of an array of object instances, where each instance is an
appropriate object class for the search (i.e., a search beginning
with /ips yields an array of IP network object instances, and a
search beginning with /autnums yields an array of autonomous system
number object instances). The IP network object class is defined in
Section 5.4 of [RFC9083], and the autonomous system number object
class is defined in Section 5.5 of [RFC9083]. The object instance
arrays are contained within the response object.

The names of the arrays are as follows:

* for /ips searches, the array is "ipSearchResults"; and

* for /autnums searches, the array is "autnumSearchResults".

The following is an elided example of a response for an IPv4 network
search:

{
"rdapConformance": [ "rdap_level_0", "rirSearch1",
"ips", "ipSearchResults", ... ],
...
"ipSearchResults": [
{
"objectClassName": "ip network",
"handle": "XXXX-RIR",
"startAddress": "192.0.2.0",
"endAddress": "192.0.2.127",
...
},
{
"objectClassName": "ip network",
"handle": "YYYY-RIR",
"startAddress": "192.0.2.0",
"endAddress": "192.0.2.255",
...
}
]
}

Figure 8: IPv4 Network Search Response

The following is an elided example of a response for an IPv6 network
search:

{
"rdapConformance": [ "rdap_level_0", "rirSearch1",
"ips", "ipSearchResults", ... ],
...
"ipSearchResults": [
{
"objectClassName": "ip network",
"handle": "XXXX-RIR",
"startAddress": "2001:db8:a::",
"endAddress": "2001:db8:a:ffff:ffff:ffff:ffff:ffff",
...
},
{
"objectClassName": "ip network",
"handle": "YYYY-RIR",
"startAddress": "2001:db8::",
"endAddress": "2001:db8:ffff:ffff:ffff:ffff:ffff:ffff",
...
}
]
}

Figure 9: IPv6 Network Search Response

The following is an elided example of a response to an autonomous
system number search:

{
"rdapConformance": [ "rdap_level_0", "rirSearch1",
"autnums", "autnumSearchResults", ... ],
...
"autnumSearchResults": [
{
"objectClassName": "autnum",
"handle": "XXXX-RIR",
"startAutnum": 64496,
"endAutnum": 64496,
...
},
{
"objectClassName": "autnum",
"handle": "YYYY-RIR",
"startAutnum": "64497",
"endAutnum": "64497",
...
}
]
}

Figure 10: ASN Search Response

Responses for relation searches for reverse domain objects have the
same form as for a standard domain search response, per [RFC9083].

If the search can be processed by the server, but there are no
results for the search, then the server returns an HTTP 404 (Not
Found) [RFC9110] response code, with the body of the response
containing an empty results array.