domani
v1.0.5
Published
Official TypeScript SDK for the domani API - domains, email, and identity for AI agents.
Maintainers
Readme
domani
Official TypeScript SDK for the domani API - domains, email, and identity for AI agents. Fully typed, generated from the OpenAPI spec, zero runtime dependencies (uses the global fetch).
Looking for the command-line tool? It moved to
domani-cli(thedomanicommand is unchanged:npm i -g domani-cli).
Install
npm install domaniRequires Node 18+ (for global fetch), or pass your own fetch implementation.
Quickstart
import { Domani, DomaniError } from "domani";
const domani = new Domani({ apiKey: process.env.DOMANI_API_KEY! });
// Search availability + pricing
const results = await domani.search({ q: "myagent.com" });
// Give an agent an inbox
await domani.createMailboxByAddress({ address: "[email protected]" });
// Send mail
await domani.sendEmailByAddress("[email protected]", {
to: "[email protected]",
subject: "Hello",
text: "Sent from my domani mailbox.",
});
// Errors carry the API's structured code + hint
try {
await domani.sendEmailByAddress("[email protected]", { to: "[email protected]", text: "..." });
} catch (e) {
if (e instanceof DomaniError) {
console.error(e.status, e.code, e.hint); // e.g. 400 RECIPIENTS_SUPPRESSED
}
}API
new Domani({ apiKey, baseUrl?, fetch? }) exposes one typed method per API operation (named after its operationId). Path parameters are positional; request bodies and query objects are typed. Every method returns the parsed JSON response and throws DomaniError (status, code, hint, documentation_url) on non-2xx.
Full endpoint reference: https://domani.run/docs · OpenAPI spec: https://domani.run/.well-known/openapi.json
Generated
src/index.ts is generated from the domani OpenAPI spec - do not edit it by hand. It is regenerated whenever the API surface changes.
License
MIT
