localization

GET /v1/i18n/slugs

Get translated URL slugs for every locale.

Све localization крајње тачке

Сва документација за програмере →

Аутентификација

Пошаљите API кључ као bearer токен. Ова крајња тачка не наводи конкретну дозволу у спецификацији, па свом кључу доделите најмања неопходна овлашћења и проверите одговор уместо да претпостављате.

Ова крајња тачка не прихвата id организације. Ваш кључ већ идентификује организацију којој припада, а одговор је ограничен на њу.

Испробајте

Замените све што је у угластим заградама сопственим вредностима, а чувар места кључа кључем са своје контролне табле.

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

Пријављени сте? API конзола на вашој контролној табли попуњава ваш прави id организације и ваш сопствени кључ, и покреће захтев према живом API-ју како бисте могли да видите стварни одговор. Отворите ову крајњу тачку у API конзоли

Детаљи

Returns the calling organization's translated public URL slugs, keyed by the canonical (source-locale) identifier then by locale — what the public frontend needs to build locale-routed URLs and hreflang alternates (CLAUDE.md §2.19, docs/28, docs/30). Reads the slug surface only. Every emitted value is a valid URL path. The stored translation is normalised on the way out — case-folded to lower case, inner whitespace and underscores collapsed to single hyphens, NFC — and a value that is still not a usable path after that (most often a model answer that lost one of the source's / separators, so it names a different route) is omitted rather than emitted broken. The caller then falls back to the canonical URL, which is a live, indexable page; publishing the broken form would advertise a URL the router cannot resolve. This was added by W24-B on 2026-08-20 (docs/72 D12010) after measuring that 694 of 4,043 settled page slugs were values the public site's own validator refused — "Über uns", "Относно" — every one up_to_date, every one counted complete on the admin Translation Status dashboard, and not one of them reachable by any reader in any language. A locale's slug is emitted ONLY when its status is up_to_date. This is stricter than GET /v1/i18n/bundles/{locale}, and deliberately so: a URL is not a string on a page, it is an identity. Publishing a slug that is still stale/translating means publishing a URL that will change again within minutes — every link, share and crawl against the interim URL then 404s or bounces through a redirect, which costs real link equity and manufactures redirect churn on exactly the pages SEO cares about. A locale whose slug is not yet settled is simply absent from the response, and the caller falls back to the canonical URL until it is.

Параметри

НазивТипОбавезноШта је ово
object_ref_prefix (query)stringНеOnly include slugs whose canonical id starts with this prefix.
limit (query)integerНеPage size, in slug ROWS (one per object_ref × locale). Sending this (or cursor) opts into paging; send neither and the response is the whole map, with a 422 when it…
cursor (query)stringНеThe next_cursor from the previous page, passed back verbatim. Opaque; a cursor this endpoint did not issue is a 422. Keyset over (object_ref, locale), so rows written while…

Одговор

НазивТипОбавезноШта је ово
slugsobjectДаCanonical object_ref -> locale -> translated slug. A locale appears only when its slug is up_to_date; anything less settled is omitted and the caller falls back to the…
next_cursorobjectНеPresent only in paged mode (limit or cursor sent): the cursor for the next page, or null when this was the last one.

Грешке које ова крајња тачка може вратити

401 · 403 · 422 · 429