data_for_seo/entity/backlinks/element/backlinks_page_intersection.rs
1use crate::entity::BacklinksElementIndirectLinkPath;
2use serde::{Deserialize, Serialize};
3
4/// A backlink record inside a Page Intersection result, grouped by target id.
5/// See <https://docs.dataforseo.com/v3/backlinks/page_intersection/live/>.
6#[derive(Debug, Default, Serialize, Deserialize, Clone)]
7pub struct BacklinksApiElementBacklinksPageIntersection {
8 /// Element type identifier for this item.
9 #[serde(rename = "type")]
10 pub type_of_element: Option<String>,
11 /// Domain the backlink originates from.
12 pub domain_from: Option<String>,
13 /// URL of the page the backlink originates from.
14 pub url_from: Option<String>,
15 /// Whether the `url_from` page uses HTTPS.
16 pub url_from_https: Option<bool>,
17 /// Domain the backlink points to.
18 pub domain_to: Option<String>,
19 /// URL the backlink points to.
20 pub url_to: Option<String>,
21 /// Whether the `url_to` page uses HTTPS.
22 pub url_to_https: Option<bool>,
23 /// Top-level domain of the referring page.
24 pub tld_from: Option<String>,
25 /// Whether the backlink is newly discovered.
26 pub is_new: Option<bool>,
27 /// Whether the backlink has been lost.
28 pub is_lost: Option<bool>,
29 /// Spam score of the backlink (0-100).
30 pub backlink_spam_score: Option<i64>,
31 /// Rank of this element on the configured scale (0-1000 by default).
32 pub rank: Option<i64>,
33 /// Rank of the referring page.
34 pub page_from_rank: Option<i64>,
35 /// Rank of the referring domain.
36 pub domain_from_rank: Option<i64>,
37 /// Platform types detected for the referring domain.
38 pub domain_from_platform_type: Option<Vec<String>>,
39 /// Whether the referring domain is an IP address.
40 pub domain_from_is_ip: Option<bool>,
41 /// IP address of the referring domain.
42 pub domain_from_ip: Option<String>,
43 /// Country of the referring domain.
44 pub domain_from_country: Option<String>,
45 /// Number of external links on the referring page.
46 pub page_from_external_links: Option<i64>,
47 /// Number of internal links on the referring page.
48 pub page_from_internal_links: Option<i64>,
49 /// Size of the referring page in bytes.
50 pub page_from_size: Option<i64>,
51 /// Character encoding of the referring page.
52 pub page_from_encoding: Option<String>,
53 /// Language of the referring page.
54 pub page_from_language: Option<String>,
55 /// Title of the referring page.
56 pub page_from_title: Option<String>,
57 /// HTTP status code of the referring page.
58 pub page_from_status_code: Option<i32>,
59 /// Date and time the element was first found (UTC).
60 pub first_seen: Option<String>,
61 /// Date and time the backlink was seen before `last_seen` (UTC).
62 pub prev_seen: Option<String>,
63 /// Date and time the backlink was last seen (UTC).
64 pub last_seen: Option<String>,
65 /// Type of the backlink (anchor, image, redirect, ...).
66 pub item_type: Option<String>,
67 /// HTML attributes of the backlink (nofollow, ugc, ...).
68 pub attributes: Option<Vec<String>>,
69 /// Whether the backlink is dofollow.
70 pub dofollow: Option<bool>,
71 /// Whether the backlink is still present on the referring page.
72 pub original: Option<bool>,
73 /// Alt text of the backlink when it is an image.
74 pub alt: Option<String>,
75 /// Anchor text of the referring links.
76 pub anchor: Option<String>,
77 /// Text immediately preceding the anchor.
78 pub text_pre: Option<String>,
79 /// Text immediately following the anchor.
80 pub text_post: Option<String>,
81 /// HTML semantic location of the backlink on the referring page.
82 pub semantic_location: Option<String>,
83 /// Number of links from the referring page to the target.
84 pub links_count: Option<i64>,
85 /// Number of grouped backlinks represented by this item.
86 pub group_count: Option<i64>,
87 /// Whether the backlink is broken.
88 pub is_broken: Option<bool>,
89 /// HTTP status code returned by the `url_to` page.
90 pub url_to_status_code: Option<i32>,
91 /// Spam score of the `url_to` page (0-100).
92 pub url_to_spam_score: Option<i64>,
93 /// Redirect target of the `url_to` page, if any.
94 pub url_to_redirect_target: Option<String>,
95 /// Whether the backlink reaches the target through a redirect or canonical chain.
96 pub is_indirect_link: Option<bool>,
97 /// Redirect/canonical chain followed by an indirect backlink.
98 pub indirect_link_path: Option<Vec<BacklinksElementIndirectLinkPath>>,
99}