links
GET /v1/link-targets
The Link Tracker report — domains this org's sites link out to.
Authentification
Envoyez une clé d'API en tant que jeton du porteur (bearer token). Cet endpoint n'indique pas de permission spécifique dans la spécification, attribuez donc à votre clé le minimum requis et vérifiez la réponse plutôt que de faire des suppositions.
Où insérer l'ID de votre organisation
Cet point de terminaison prend org_id comme paramètre de requête. Omettez-le et l'appel couvrira l'ensemble de votre sous-arbre de location ; envoyez-le pour restreindre l'appel à une seule organisation.
L'identifiant de votre organisation se trouve sur l'écran des clés API de votre tableau de bord, à côté de la clé elle-même. Il s'agit du même identifiant pour chaque appel que vous effectuez.
Essayer
Remplacez tout ce qui se trouve entre crochets par vos propres valeurs, et le espace réservé à la clé par une clé de votre tableau de bord.
curl -X GET https://api.zinndigital.com/v1/link-targets \
-H "Authorization: Bearer zdk_live_…"Connecté ? La console d'API de votre tableau de bord saisit votre véritable ID d'organisation ainsi que votre propre clé, et exécute la requête sur l'API de production afin que vous puissiez voir la réponse réelle. Ouvrir ce point de terminaison dans la console API
Détails
V1's columns, rebuilt: **Domain | Site | Reflinks | Ref posts | Ref sites**. Ranked by reflinks by default, because the question is *"who am I linking to most"*. **Search rolls variants up.** `www.`, letter case and punycode/Unicode are folded on the **write** path, so they are already one row by the time you search — that is the fix for the production defect where `cu-tv.com` showed 185 reflinks and `www.cu-tv.com` showed 1 (docs/96 §1.4, D1328). **Subdomains** stay separate rows, because an operator cares which host they hit, but a search for `skokka.com` finds `blog.skokka.com` too and `rollup` gives the combined totals across the whole match. ⛔ **Paged by `offset`, not by cursor.** The shared cursor paginator is keyset over the sortable id, which is chronological; this list is ranked, and a keyset cursor cannot express that ordering. `total` is the full match so the screen can page all of it — there is no hidden cap. `coverage` says how much of the estate the report is based on. ⛔ Without it a customer cannot tell *"no outbound links"* from *"nobody has scanned this yet"*, and those two readings lead to opposite actions.
Paramètres
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
org_id (query) | string | Non | Narrow to one organisation in the caller's subtree — what the dashboard's org switcher sends. ⛔ **Narrow only:** it is intersected with what the caller may already read, so an o… |
q (query) | string | Non | A domain, or any text. A value that parses as a hostname matches that host **and every subdomain of it**; anything else is a substring match, because someone typing `casino` mea… |
owned (query) | string<own, external> | Non | `own` shows only targets that are the customer's **own** sites; `external` only those that are not. Omitted shows both. |
site_id (query) | string | Non | Only targets linked to **from** this site. |
include_ips (query) | boolean | Non | Bare-IP targets are real links and are tracked, but they never group sensibly. Set `false` to hide them. |
min_links (query) | integer | Non | The noise filter. Padding links (`google.com`, `youtube.com`) sit beside the money links deliberately. ⛔ They are **filterable, never auto-deleted** — removing a link a customer… |
sort (query) | string<links, posts, sites, host, recent> | Non | — |
limit (query) | integer | Non | — |
offset (query) | integer | Non | — |
Réponse
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
items | LinkTarget[] | Oui | — |
total | integer | Oui | — |
offset | integer | Oui | — |
limit | integer | Oui | — |
has_more | boolean | Oui | — |
rollup | LinkRollup | Oui | Combined totals across **every** target the filters matched — the *"including variants of it"* number. Not the sum of the page, so it does not change as you page. |
coverage | LinkCoverage | Oui | How much of the estate the report is based on. ⛔ Without it a customer cannot tell *"no outbound links"* from *"never scanned"*, and those lead to opposite actions. |
Erreurs que cet point de terminaison peut renvoyer
401 · 403 · 429