Skip to main content

Crate rdap

Crate rdap 

Source
Expand description

§RDAP Client Library

A modern, elegant RDAP (Registration Data Access Protocol) client library written in Rust.

§Features

  • Full RDAP protocol support (RFC 7480-7484)
  • Automatic bootstrap service discovery
  • Beautiful colored output
  • Disk and memory caching
  • Async/await support
  • Type-safe JSON parsing

§Quick Start

use rdap::{RdapClient, RdapRequest, QueryType};
use rdap::display::RdapDisplay;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = RdapClient::new()?;
    let request = RdapRequest::new(QueryType::Domain, "example.com");
    let response = client.query(&request).await?;

    // Print as WHOIS-style plain text
    rdap::whois::display_whois(&response);

    // Or print as colored terminal output
    response.display(false);

    Ok(())
}

Re-exports§

pub use client::RdapClient;
pub use error::RdapError;
pub use error::Result;
pub use request::QueryType;
pub use request::RdapRequest;
pub use models::*;

Modules§

bootstrap
Bootstrap service discovery
cache
Disk cache for IANA bootstrap registry files.
client
RDAP client implementation
display
Beautiful colored output for RDAP objects
error
Error types for the RDAP client
models
RDAP data models
request
RDAP request types and builders
whois
WHOIS-style output formatter for RDAP objects