Paul Palse

RIPE Database Query API Including Search

Paul Palse
0

We have released support for searches which can have multiple search results as a follow-up to our RIPE Labs publication of a direct lookup API and form.


 

Note that this article is not up to date anymore. Please refer to the most up-to-date RIPE Database documentation .


Introduction

We have released support for searches which can have multiple search results as a follow-up to our RIPE Labs publication of a direct lookup API and form.

The aim of this release is to cover most of the current RIPE Database search capabilities in the RIPE Database REST API prototype.

Search form

Along with the RDQWS prototype we are also releasing a search client form:

Search form

http://lab.db.ripe.net/portal/search.htm

This form itself uses the RIPE Database REST API and can be used as a plain search form or to construct searches to be reused in script or code, since it generates links to the original xml and json responses.

The form has new features like using multiple sources, multiple type selection and multiple query-strings (up to 5). The response, in case multiple options are selected, is a union of multiple query responses without returning possible duplicate results.

Please note that both the form and the underlying web service return a maximum of 50 objects per query. The RIPE Database Web Service also respects the Whois service accounting (throttling rules), so it is possible that excessive queries may cause the service to get blocked if the number of objects involved to generate the results is too high.

Search API

There is an update to the documentation for the RDQWS available, which now includes search capabilities.

The output schema

The schema of the XML and JSON responses between the lookup and search service are generally the same, with only a few exceptions.

Parameters

The search Web Service uses HTTP GET parameters to pass filters and reverse attributes to the API. The service will return the parameters in the ‘parameters’ node:

  <parameters>
  <direct-lookup/>
  <type-filters/>
  <query-strings>
    <query-string value="pp-ripe"/>
  </query-strings>
  <sources>
    <source name="RIPE" id="ripe"/>
  </sources>
</parameters>
 

Links to object details

From the search results, links to objects are included just like in the lookup service.

  <attribute name="mnt-by" value="RIPE-DBM-MNT" referenced-type="mntner">
  <link xlink:type="locator" 
        xlink:href="http://dev.db.ripe.net/whois/lookup/ripe/mntner/RIPE-DBM-MNT"/>
</attribute>
 

What’s next?

We are looking into extending the RDQWS with what we like to call “use case” search scenarios. We know of cases where several queries are needed to drill down to the needed information. We would like to introduce these “use case” searches so that it's possible to answer simple questions to the RIPE Database with a more concise answer.

But, most importantly we want your feedback and feature requests.

We will also publish any useful clients written against the RDQWS, if you have written any code that you think could be useful to others, don’t hesitate to post links to it or contact us to arrange publication.

 

 

Tags:
0

About the author

Comments 0