domain_analytics_technologies_domain_technologies
Analyze technologies used by a specific domain to understand its technical stack and infrastructure. Identify software, frameworks, and tools powering the website for insights and optimization.
Instructions
Using this endpoint you will get a list of technologies used in a particular domain
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | target domain required field domain name of the website to analyze Note: results will be returned for the specified domain only |
Implementation Reference
- The handle() method implements the core logic of the tool, making a POST request to the DataForSEO '/v3/domain_analytics/technologies/domain_technologies/live' endpoint with the provided target domain and handling the response or error.async handle(params: any): Promise<any> { try { const response = await this.client.makeRequest('/v3/domain_analytics/technologies/domain_technologies/live', 'POST', [{ target: params.target }]); return this.validateAndFormatResponse(response); } catch (error) { return this.formatErrorResponse(error); } }
- Defines the input schema using Zod, specifying a required 'target' string parameter for the domain to analyze.getParams(): z.ZodRawShape { return { target: z.string().describe(`target domain required field domain name of the website to analyze Note: results will be returned for the specified domain only`) } }
- Registers the DomainTechnologiesTool by instantiating it and including it in the tools array, then mapping to a record keyed by tool name with description, params, and handler.getTools(): Record<string, ToolDefinition> { const tools = [ new WhoisOverviewTool(this.dataForSEOClient), new WhoisFiltersTool(this.dataForSEOClient), new DomainTechnologiesTool(this.dataForSEOClient), new DomainTechnologiesFiltersTool(this.dataForSEOClient), // Add more tools here ]; return tools.reduce((acc, tool) => ({ ...acc, [tool.getName()]: { description: tool.getDescription(), params: tool.getParams(), handler: (params: any) => tool.handle(params), }, }), {}); }