Linktrust

API

API Pricing

It costs the same as checks via UI

Linktrust

How does it work?

Linktrust.pro provides api for most of services

01

Domains API

Check domains: GET https://linktrust.pro/api/domain?token=< api token >&< ...params >

Available params:

  • ?domain=[string] - document to analyze
  • ?format=['csv' | 'json'] - response format (csv is deprecated, we recommend using json only going forward)

Google doc CSV API: https://docs.google.com/spreadsheets/d/1eHrHKwDedN35x5adfsNubH1etQUoY5AIUq8kM3QiqAk/edit?usp=sharing — domains

Domain calculation runs synchronously on the first request, so the response returns right away — but not all data is ready yet. The message field holds the calculation status:

  • partially_done — core metrics (spam/trust score, backlinks, traffic, keywords) are already ready, additional data is still being calculated in the background
  • done — all data is ready, including DA, wiki backlink, domain age, wayback timeline, keyword topics and contacts
  • failed — error during calculation

To get complete data, repeat the call after a few seconds — until message becomes done. Repeat requests for the same domain are free — tokens are only charged once.

Typed response description:

{
  message: 'pending' | 'processing' | 'partially_done' | 'done' | 'failed';
  check: {
    spamScore: number | null;
    trustScore: number | null;
    monthOrganicAmount: number | null;
    monthTrafficAmount: number | null;
    trafficTrend3mPercent: number | null;
    backlinksTotal: number | null;
    backlinksDomains: number | null;
    hasWikipediaBacklink: boolean | null;
    domainDa: number | null;
    majesticTf: number | null;
    majesticCf: number | null;
    domainRegisteredAt: string | null; // YYYY-MM-DD
    waybackOldestAt: string | null; // YYYY-MM-DD
    waybackHasGaps: boolean | null;
    waybackTimeline: { from: string; to: string; months: number }[] | null;
    keywordTopics: string[] | null;
    contacts: { email: string | null; socials: Record<string, string> } | null;
    categories: string[] | null;
    countries: { country: string; percent: number }[] | null;
    backlinks: {
      toUrl: string;
      fromUrl: string;
      nofollow: boolean;
      fromAnchor: string | null;
      fromDomain: string;
      fromDomainRank: number;
    }[];
    keywords: {
      serp_found_url: string;
      serp_position: number;
      keyword: string;
      country: string;
      volume: number;
    }[];
  };
}

02

Serp API

Check google positions: GET https://linktrust.pro/api/serp?token=< api token >&< ...params >

Available params:

  • ?q=[string] - keyword to check
  • ?hl=[string] - google hl
  • ?gl=[string] - google gl
  • ?uule=[string] - google uule
  • ?depth=[int] - scan depth (10-100)

Typed response description:

{
  status: 'success' | 'error';
  message?: string; // present when status is 'error'
  serp?: {           // present when status is 'success'
    position: number;
    title: string;
    url: string;
    description: string;
  }[];
}

03

Check Indexation Single URL API

Check indexation in google: GET https://linktrust.pro/api/check-indexation?token=< api token >&< ...params >

Available params:

  • ?url=[string] - url to check

Typed response description:

{
  status: 'success' | 'error';
  message?: string;                   // present on error (no tokens / system error)
  errors?: Record<string, string[]>;  // present when validation failed
  url?: string;                       // present when status is 'success'
  is_indexed?: boolean;               // present when status is 'success'
}

04

Check Indexation Batch API

Batch indexation check in google:

Create request:

POST https://linktrust.pro/api/check-indexation-batch?token=< api token >

Available params:

  • token=[string] - API token
  • urls=[array] - array of URLs to check (1-5000)
  • name=[string] (optional) - batch request name

Typed response description:

{
  status: 'success' | 'error';
  message: string;                    // human-readable status/error message
  errors?: Record<string, string[]>;  // present when validation failed
  id?: number;                        // present when status is 'success'
  check_status?: 'pending';           // present when status is 'success'
  urls_count?: number;                // present when status is 'success'
}

Get results:

GET https://linktrust.pro/api/check-indexation-batch/{id}?token=< api token >

Check statuses:

  • pending - pending
  • processing - processing
  • done - done, results available
  • failed - execution error

Typed response description:

{
  id: number;
  name: string;
  check_status: 'pending' | 'processing' | 'done' | 'failed';
  results?: Record<string, boolean>;  // present when check_status is 'done'
  total_indexed?: number;             // present when check_status is 'done'
  total_not_indexed?: number;         // present when check_status is 'done'
  status?: 'error';                   // present only when the batch was not found or a system error occurred
  message?: string;                   // present only when status is 'error'
}

05

User balances:

https://linktrust.pro/api/balance?token=< api token >