1 unstable release
0.1.0 | Apr 2, 2024 |
---|
#1058 in Asynchronous
25KB
369 lines
Gandi V5 LiveDNS API Library
Provides an abstration on top of Gandi LiveDNS RESTful Api.
A personal access token is required
This library is asynchronous.
Examples
The Api is the main entrypoint to communicate with Gandi LiveDNS Api.
use std:env;
use gandi_v5_livedns_api::{Api, Endpoint};
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
let personal_access_token = env::var("GANDI_V5_PAT")?;
let api = Api::build(Endpoint::Prod, &personal_access_token)?;
}
Calls Supported
- TSIG keys
- Manage TSIG keys
- Software configuration information
- List accepted record types
- Domains
- List of domains handled by LiveDNS
- Add a new domain to LiveDNS
- Domain information
- Show domain's properties
- Update domain's properties
- Zone transfer slaves
- Zone slaves'IP
- TSIG keys associated with a domain
- Manage TSIG key association
- DNSSEC keys
- Manipulate a specific DNSSEC key
- Domain's nameserver information
- Domain's records
- List records associated with a domain
- Creates a new record
- Replace the whole zone with new records
- Delete all records
- Domain's records, by name
- List records named {rrset_name} associated with this domain
- Create a new record whose name is defined by the path
- Replace all records named {rrset_name}
- Delete all records named {rrset_name}
- Single domain's record, by name and type
- Get a single single record with its name and type
- Create a new record whose name and type are defined by the path
- Overwrites a single record with {rrset_name} and {rrset_type}
- Delete record with {rrset_name} and {rrset_type}
- Snapshots of a domain
- Snapshots operations
- Generic nameservers
Dependencies
~4–15MB
~200K SLoC