clj.git
ird-clj — full-coverage Clojure client for the ird public API: .ro domains, DNS (hosted zones, DNSSEC, bring-your-own-domain claims), VPS, tunnels, IPFS, P2P apps, and async jobs. Every one of the API's 161 operations is wrapped by a thin, documented function.
Use as a dependency
;; deps.edn
ro.ird/ird-clj {:git/url "https://ird.cod-sursa.ro/clj.git"
:git/tag "v0.2.0"
:git/sha "319801b"}
That is the latest release. To track the newest commit instead, pin
:git/sha "…" (or ask the mirror:
git ls-remote https://ird.cod-sursa.ro/clj.git HEAD). The same
coordinates are machine-readable in
releases.json.
Clone
git clone https://ird.cod-sursa.ro/clj.git
browse the source in your browser →
Quickstart
(require '[ird.client :as ird]
'[ird.domains :as domains])
(def c (ird/make-client {:api-key (System/getenv "IRD_API_KEY")}))
(domains/check c "example.ro")
;; => {:domain "example.ro" :status "registered" ...}
The full guide — authentication, pagination, async jobs, the domain
safety gate, tests — is in the repo's README.md.
What's inside
src/ird/— one namespace per API area (domains,dns,vps,tunnels,ipfs,p2p,jobs, …)spec/openapi.json— the API spec the client is verified against, one-to-one, by the test suitetest/ird/— conformance, coverage and integration tests (clojure -M:test; live tests opt-in)
License
MIT.