@hasna/domains
Version:
Domain portfolio, registrar, marketplace, and DNS management for AI agents — CLI + MCP + HTTP API + SDK, shared account API and PostgreSQL
69 lines • 2.12 kB
TypeScript
/**
* Domain Reputation — tracks blacklist status, threat scores, and
* security reputation for domains.
*/
export interface DomainReputation {
id: string;
domain_id: string;
is_blacklisted: boolean;
blacklist_sources: string[];
threat_score: number | null;
spam_score: number | null;
malware_detected: boolean;
phishing_detected: boolean;
reputation_sources: string[];
last_checked_at: string | null;
notes: string | null;
created_at: string;
updated_at: string;
}
export interface CreateReputationInput {
domain_id: string;
is_blacklisted?: boolean;
blacklist_sources?: string[];
threat_score?: number;
spam_score?: number;
malware_detected?: boolean;
phishing_detected?: boolean;
reputation_sources?: string[];
last_checked_at?: string;
notes?: string;
}
/**
* Create or update a reputation record for a domain.
*/
export declare function upsertDomainReputation(input: CreateReputationInput): DomainReputation;
/**
* Get reputation for a domain.
*/
export declare function getDomainReputation(domainId: string): DomainReputation | null;
/**
* Get reputation by domain name.
*/
export declare function getDomainReputationByName(domainName: string): DomainReputation | null;
/**
* Update reputation record.
*/
export declare function updateDomainReputation(id: string, input: Partial<CreateReputationInput>): DomainReputation | null;
/**
* List all blacklisted domains.
*/
export declare function listBlacklistedDomains(): DomainReputation[];
/**
* List domains with threat score above a threshold.
*/
export declare function listHighThreatDomains(threshold?: number): DomainReputation[];
/**
* Check domain against common DNS-based blacklists (DNSBL zones).
* Returns a list of zones where the domain is listed.
*/
export declare function checkDnsBlacklist(domainName: string): {
listed: boolean;
zones: string[];
details: string[];
};
/**
* Delete reputation record.
*/
export declare function deleteDomainReputation(id: string): boolean;
//# sourceMappingURL=domain-reputation.d.ts.map