The DroneBL RPC WebService v2

Highly available querying and manipulation of the DroneBL database.

Introduction

The DroneBL RPC WebService is used to connect the DroneBL to other codebases and scripts. Mostly it is used internally to add and remove entries in the database on demand. To use the WebService, you will need an RPCKEY, which you can get by contacting us. Our BOPM reporting service is an example of possible usage of the RPC webservice.

List of tools

As follows are some scripts that employ the RPC2 methods described below. Use these as they are, modify them, or take them apart to see how they work.

Syntax

A request looks something like this, where METHOD and METHOD-PARAMS belong to the list below:

<?xml version="1.0"?>
<request key='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'>
    <METHOD METHOD-PARAMS />
</request>

Methods

Once you have acquired an RPCKEY, you can use these methods. Note that some methods may not be available depending on what level of access your RPCKEY has.

add: Adds a new entry to the DroneBL.

lookup: Looks up an IP or range in DroneBL. You must specify either ip or id.

remove: Removes a listing in DroneBL.

records: Show records as added by the in the request specified rpckey.

Responses

A response looks something like this:

<?xml version="1.0"?>
<response type="success">
    METHOD-DATA
</response>

Or this:

<?xml version="1.0"?>
<response type="success" />

Errors look like this:

<?xml version="1.0"?>
<response type="error">
    <code>ERROR-CODE</code>
    <message>ERROR-MESSAGE</message>
    <data>ERROR-DETAILS</data>
</response>

Using RPC2

You will need to sign up for an RPCKEY. This is now a public process, and the RPCKEY will work for RPC1 too, which is a bit easier than RPC2, but less powerful.

We are working on standardizing RPC2 as a DNSBL provider interaction protocol. Hopefully other providers will start supporting it.

View Markdown Source