localization

GET /v1/i18n/catalogues/{locale}

Get the public site's UI message catalogue for one locale.

جميع نقاط نهاية localization

جميع مستندات المطورين

المصادقة

هذه نقطة النهاية عامة. فهي لا تتطلب أي بيانات اعتماد ولا أي مؤسسة - بل هي ما تقرؤه مواقعنا التسويقية ومحركات الإجابة بالذكاء الاصطناعي الخاصة بنا.

لا يقبل هذا الطرف أي معرف للمؤسسة. يحدد مفتاحك بالفعل المؤسسة التي ينتمي إليها، وتكون الاستجابة محصورة في نطاقها.

جربه الآن

استبدل أي شيء بين أقواس زاوية بقيمك الخاصة، والعنصر النائب للمفتاح بمفتاح من لوحة تحكمك.

curl -X GET https://api.zinndigital.com/v1/i18n/catalogues/{locale}

هل سجلت الدخول؟ تقوم وحدة تحكم واجهة برمجة التطبيقات في لوحة التحكم الخاصة بك بربط معرف مؤسستك الحقيقي ومفتاحك الخاص، وتنفذ الطلب مقابل واجهة برمجة التطبيقات المباشرة لتتمكن من رؤية الاستجابة الفعلية. افتح هذه النهاية الطرفية في وحدة تحكم API

التفاصيل

Returns the Zinn® marketing site's own UI strings for locale, nested in the shape next-intl consumes directly — the read marketplace-web performs on the server at render time. Public, and non-tenant. Unlike getTranslationBundle this needs no credential and has no organization scope: it returns the platform's own strings, which are already present in the public HTML of every page in that language. That is also what makes it cacheable by URL at the edge — an Authorization header suppresses shared caching, which would put a network round trip on every page render. Why it exists next to getTranslationBundle. The bundle is the build-time read: authenticated, tenant-scoped, and shaped as object_ref → field → {text, status} for a script that re-nests it and commits messages/<locale>.json. That made a finished translation wait for a commit, a rebuild and a deploy. This is the render-time read, so a finished translation goes live on its own. up_to_date only — deliberately stricter than the bundle's last-good-while-stale rule. The site layers this response over its committed catalogue, so an omitted key falls back to the committed translation rather than to English; serving stale text here could only replace a good translation with an older one. An unknown-to-the-pipeline locale is a 200 with an empty messages object, never a 404. The caller treats any failure as "use the committed catalogue", so a 404 would be indistinguishable from an outage and would report a locale that simply has not been translated yet as the engine being broken. Cacheable: strong ETag plus Cache-Control: public, max-age=300, stale-while-revalidate=86400. Send If-None-Match for a 304.

المعلمات

الاسمالنوعمطلوبما هو هذا
locale (path)LocaleCodeنعمThe target locale (docs/28 registry code).
If-None-Match (header)stringلاA previously returned ETag; a match responds 304.

الاستجابة

الاسمالنوعمطلوبما هو هذا
localeLocaleCodeنعمBCP-47 / ISO locale code from the language registry (docs/28).
messagesobjectنعمThe catalogue, nestednav.link.pbn arrives as three levels of object, not as a dotted key — because the consumer is next-intl, which reads this shape directly. It is the…

الأخطاء التي يمكن أن تُرجعها نقطة النهاية هذه

422 · 429