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.