backlinks_summary
Analyze backlinks for any domain, subdomain, or webpage to understand link profiles and identify linking opportunities.
Instructions
This endpoint will provide you with an overview of backlinks data available for a given domain, subdomain, or webpage
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | domain, subdomain or webpage to get backlinks for required field a domain or a subdomain should be specified without https:// and www. a page should be specified with absolute URL (including http:// or https://) | |
| include_subdomains | No | indicates if indirect links to the target will be included in the results if set to true, the results will include data on indirect links pointing to a page that either redirects to the target, or points to a canonical page if set to false, indirect links will be ignored | |
| exclude_internal_backlinks | No | indicates if internal backlinks from subdomains to the target will be excluded from the results if set to true, the results will not include data on internal backlinks from subdomains of the same domain as target if set to false, internal links will be included in the results |
Implementation Reference
- The `handle` method executes the tool logic: sends POST request to DataForSEO `/v3/backlinks/summary/live` endpoint with the provided parameters and handles response or error.async handle(params: any): Promise<any> { try { const response = await this.client.makeRequest('/v3/backlinks/summary/live', 'POST', [{ target: params.target, include_subdomains: params.include_subdomains, exclude_internal_backlinks: params.exclude_internal_backlinks }]); return this.validateAndFormatResponse(response); } catch (error) { return this.formatErrorResponse(error); } }
- Defines the Zod schema for tool input parameters: `target` (required string), `include_subdomains` (optional boolean, default true), `exclude_internal_backlinks` (optional boolean, default true).getParams(): z.ZodRawShape { return { target: z.string().describe(`domain, subdomain or webpage to get backlinks for required field a domain or a subdomain should be specified without https:// and www. a page should be specified with absolute URL (including http:// or https://)`), include_subdomains: z.boolean().optional().describe(`indicates if indirect links to the target will be included in the results if set to true, the results will include data on indirect links pointing to a page that either redirects to the target, or points to a canonical page if set to false, indirect links will be ignored`).default(true), exclude_internal_backlinks: z.boolean().optional().describe(`indicates if internal backlinks from subdomains to the target will be excluded from the results if set to true, the results will not include data on internal backlinks from subdomains of the same domain as target if set to false, internal links will be included in the results`).default(true) }; }
- The `getName()` method returns the tool name 'backlinks_summary', used for registration.getName(): string { return 'backlinks_summary'; }
- src/core/modules/backlinks/backlinks-api.module.ts:46-46 (registration)Instantiates the BacklinksSummaryTool in the tools array within `getTools()`.new BacklinksSummaryTool(this.dataForSEOClient),
- src/core/modules/backlinks/backlinks-api.module.ts:29-62 (registration)The `getTools()` method in BacklinksApiModule registers all backlinks tools, including backlinks_summary, by creating a map keyed by tool name with description, params, and handler wrapper.getTools(): Record<string, ToolDefinition> { const tools = [ new BacklinksTool(this.dataForSEOClient), new BacklinksAnchorTool(this.dataForSEOClient), new BacklinksBulkBacklinksTool(this.dataForSEOClient), new BacklinksBulkNewLostReferringDomainsTool(this.dataForSEOClient), new BacklinksBulkNewLostBacklinksTool(this.dataForSEOClient), new BacklinksBulkRanksTool(this.dataForSEOClient), new BacklinksBulkReferringDomainsTool(this.dataForSEOClient), new BacklinksBulkSpamScoreTool(this.dataForSEOClient), new BacklinksCompetitorsTool(this.dataForSEOClient), new BacklinksDomainIntersectionTool(this.dataForSEOClient), new BacklinksDomainPagesSummaryTool(this.dataForSEOClient), new BacklinksDomainPagesTool(this.dataForSEOClient), new BacklinksPageIntersectionTool(this.dataForSEOClient), new BacklinksReferringDomainsTool(this.dataForSEOClient), new BacklinksReferringNetworksTool(this.dataForSEOClient), new BacklinksSummaryTool(this.dataForSEOClient), new BacklinksTimeseriesNewLostSummaryTool(this.dataForSEOClient), new BacklinksTimeseriesSummaryTool(this.dataForSEOClient), new BacklinksBulkPagesSummaryTool(this.dataForSEOClient), new BacklinksFiltersTool(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), }, }), {}); }