From f24ce735aba8101fd04ebf503c23364c1efad153 Mon Sep 17 00:00:00 2001 From: Schalli Date: Thu, 8 Oct 2026 14:54:19 +0200 Subject: [PATCH] fix(domains): Verfuegbarkeit mit vollstaendiger Domain abfragen (gegen AutoDNS-Demo geprueft) Mit nur dem Namensteil als searchToken liefert /domainstudio data: []. Co-Authored-By: Claude Opus 5.5 (1M context) --- apps/api/src/domains/domains-orders.service.spec.ts | 4 ++-- apps/api/src/domains/domains-orders.service.ts | 10 ++++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/apps/api/src/domains/domains-orders.service.spec.ts b/apps/api/src/domains/domains-orders.service.spec.ts index dcdcb6b..73866d5 100644 --- a/apps/api/src/domains/domains-orders.service.spec.ts +++ b/apps/api/src/domains/domains-orders.service.spec.ts @@ -315,9 +315,9 @@ describe('checkAvailability', () => { expect(h.calls[0].url).toBe('https://api.demo.autodns.com/v1/domainstudio'); expect(h.calls[0].init.method).toBe('POST'); expect(JSON.parse(h.calls[0].init.body as string)).toEqual({ - searchToken: 'beispiel', + searchToken: 'beispiel.de', currency: 'EUR', - sources: { initial: { tlds: ['de'], services: ['WHOIS', 'PRICE'] } }, + sources: { custom: { domains: ['beispiel.de'], services: ['WHOIS', 'PRICE'] } }, }); expect(result).toMatchObject({ domain: 'beispiel.de', diff --git a/apps/api/src/domains/domains-orders.service.ts b/apps/api/src/domains/domains-orders.service.ts index 5e3c863..dc3174f 100644 --- a/apps/api/src/domains/domains-orders.service.ts +++ b/apps/api/src/domains/domains-orders.service.ts @@ -23,7 +23,7 @@ import { parseJobList, parseProfileNameServers, } from './autodns-parse'; -import { normalizeDomainName, splitDomain } from './domain-name'; +import { normalizeDomainName } from './domain-name'; import { autodnsFailureToHttp, type DomainsEnvironment } from './domains.types'; import { DomainsDirectoryService } from './domains-directory.service'; import { DomainsSettingsService } from './domains-settings.service'; @@ -303,11 +303,13 @@ export class DomainsOrdersService { ascii: string, unicode: string, ): Promise { - const { label, tld } = splitDomain(ascii); + // Gegen das AutoDNS-Demo-System geprueft (08.10.2026): mit nur dem Namensteil + // als searchToken kommt `data: []` zurueck. Die vollstaendige Domain als + // eigene Quelle (`custom`) liefert genau diesen einen Eintrag mit WHOIS-Status. const result = await this.callOrThrow(credentials, 'POST', '/domainstudio', { - searchToken: label, + searchToken: ascii, currency: 'EUR', - sources: { initial: { tlds: [tld], services: ['WHOIS', 'PRICE'] } }, + sources: { custom: { domains: [ascii], services: ['WHOIS', 'PRICE'] } }, }); const parsed = parseDomainStudio(result.data, ascii); return {