links

GET /v1/link-targets

The Link Tracker report — domains this org's sites link out to.

Todos los endpoints de links

Autenticación

Envía una clave de API como token de portador. Este endpoint no especifica un permiso concreto en la especificación, así que otorga a tu clave los mínimos privilegios necesarios y comprueba la respuesta en lugar de dar por sentado.

Donde va el ID de tu organización

Este endpoint acepta org_id como parámetro de consulta. Omítelo y la llamada abarcará todo tu subárbol de inquilinos; envíalo para acotar la llamada a una sola organización.

El id de tu organización se encuentra en la pantalla de claves de API en tu panel de control, junto a la propia clave. Es el mismo id en cada llamada que realices.

Pruébalo

Reemplaza cualquier elemento entre corchetes angulares por tus propios valores, y el marcador de posición key con una clave de tu panel de control.

curl -X GET https://api.zinndigital.com/v1/link-targets \
  -H "Authorization: Bearer zdk_live_…"

¿Has iniciado sesión? La consola de la API en tu panel de control rellena el ID de tu organización real y tu propia clave, y ejecuta la solicitud contra la API en vivo para que puedas ver la respuesta real. Abre este endpoint en la consola de la API

Detalles

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.

Parámetros

NombreTipoObligatorio¿Qué es esto?
org_id (query)stringNoNarrow 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)stringNoA 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>No`own` shows only targets that are the customer's **own** sites; `external` only those that are not. Omitted shows both.
site_id (query)stringNoOnly targets linked to **from** this site.
include_ips (query)booleanNoBare-IP targets are real links and are tracked, but they never group sensibly. Set `false` to hide them.
min_links (query)integerNoThe 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>No
limit (query)integerNo
offset (query)integerNo

Respuesta

NombreTipoObligatorio¿Qué es esto?
itemsLinkTarget[]
totalinteger
offsetinteger
limitinteger
has_moreboolean
rollupLinkRollupCombined 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.
coverageLinkCoverageHow 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.

Errores que este endpoint puede devolver

401 · 403 · 429