localization
GET /v1/i18n/document-sets/{locale}
Get several marketing documents' finished translations in one call.
ದೃಢೀಕರಣ
ಈ ಎಂಡ್ಪಾಯಿಂಟ್ ಸಾರ್ವಜನಿಕವಾಗಿದೆ. ಇದು ಯಾವುದೇ ರುಜುವಾತು ಮತ್ತು ಯಾವುದೇ ಸಂಸ್ಥೆಯನ್ನು ತೆಗೆದುಕೊಳ್ಳುವುದಿಲ್ಲ — ಇದು ನಮ್ಮ ಸ್ವಂತ ಮಾರ್ಕೆಟಿಂಗ್ ಸೈಟ್ ಮತ್ತು AI ಉತ್ತರ ಎಂಜಿನ್ಗಳು ಓದುವ ವಿಷಯವಾಗಿದೆ.
ಈ ಎಂಡ್ಪಾಯಿಂಟ್ ಯಾವುದೇ ಸಂಸ್ಥೆಯ ಐಡಿಯನ್ನು ತೆಗೆದುಕೊಳ್ಳುವುದಿಲ್ಲ. ನಿಮ್ಮ ಕೀ ಯು ಈಗಾಗಲೇ ಅದು ಸೇರಿರುವ ಸಂಸ್ಥೆಯನ್ನು ಗುರುತಿಸುತ್ತದೆ ಮತ್ತು ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಅದಕ್ಕೆ ಸೀಮಿತಗೊಳಿಸಲಾಗಿದೆ.
ಪ್ರಯತ್ನಿಸಿ
ಕೋನೀಯ ಬ್ರಾಕೆಟ್ಗಳಲ್ಲಿರುವ ಯಾವುದೇ ಅಂಶವನ್ನು ನಿಮ್ಮ ಸ್ವಂತ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಮತ್ತು ಕೀ ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ ಅನ್ನು ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ನಲ್ಲಿರುವ ಕೀಯೊಂದಿಗೆ ಬದಲಾಯಿಸಿ.
curl -X GET https://api.zinndigital.com/v1/i18n/document-sets/{locale}?object_ref=<object_ref>ಸೈನ್ ಇನ್ ಆಗಿದ್ದೀರಾ? ನಿಮ್ಮ ಡ್ಯಾಶ್ಬೋರ್ಡ್ನಲ್ಲಿರುವ API ಕನ್ಸೋಲ್ ನಿಮ್ಮ ನೈಜ ಸಂಸ್ಥೆಯ ID ಮತ್ತು ನಿಮ್ಮ ಸ್ವಂತ ಕೀಲಿಯನ್ನು ಭರ್ತಿ ಮಾಡುತ್ತದೆ, ಮತ್ತು ಲೈವ್ API ವಿರುದ್ಧ ವಿನಂತಿಯನ್ನು ರನ್ ಮಾಡುತ್ತದೆ ಆದ್ದರಿಂದ ನೀವು ನಿಜವಾದ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ನೋಡಬಹುದು. API ಕನ್ಸೋಲ್ನಲ್ಲಿ ಈ ಎಂಡ್ಪಾಯಿಂಟ್ ತೆರೆಯಿರಿ
ವಿವರಗಳು
The **batched** form of `getPublicDocumentTranslations`: name up to 50 documents with a repeated `object_ref`, get all of their finished translations in one round trip. **Why it exists (D13732).** `marketplace-web` prerenders every (locale × page) route, and asking for one document at a time cost 100 documents × 58 locales = **5,800** requests per prerender pass — about 23,200 per build once `next build`'s worker processes are counted, against a 600/min budget. Measured in one 20-minute build window on the live engine: **38,322 × `429` against 20,142 served — 65% of the build's document fetches refused**, each one silently degrading a freshly deployed page to the copy committed in `content/site/`. Batched, a locale costs `ceil(100/50)` = **2** calls, so a whole build is ~464 requests. **⛔ The remedy is a bulk read, never a bigger limit** (CLAUDE.md §2.10). The call count is `ceil(documents/50)`, so it does not move when marketing pages are added — a raised limit would have to be re-derived on the next content push. **⛔ `object_ref` is required and bounded at 50.** One locale's whole `page` surface is ~7,879 entries; an unbounded read of it on a public URL is the thing this parameter exists to prevent, and a batch is not an exemption from that. **A document with no finished translations is present and empty, never omitted** — a caller cannot otherwise distinguish "nothing translated yet" from "I forgot to ask for it", and the second silently serves English. **Public and non-tenant**, **`up_to_date` only**, and cacheable with a strong `ETag` plus `Cache-Control: public, max-age=300, stale-while-revalidate=86400` — all for the same reasons as the single-document read.
ಪ್ಯಾರಾಮೀಟರ್ಗಳು
| ಹೆಸರು | ಪ್ರಕಾರ | ಅಗತ್ಯವಿದೆ | ಏನಿದು |
|---|---|---|---|
locale (path) | LocaleCode | ಹೌದು | The target locale (docs/28 registry code). |
object_ref (query) | string[] | ಹೌದು | A document, e.g. `page:hosting`. **Repeat it** to ask for several; at most 50 per call. Duplicates are charged once. |
If-None-Match (header) | string | ಇಲ್ಲ | A previously returned `ETag`; a match responds `304`. |
ಪ್ರತಿಕ್ರಿಯೆ
| ಹೆಸರು | ಪ್ರಕಾರ | ಅಗತ್ಯವಿದೆ | ಏನಿದು |
|---|---|---|---|
locale | LocaleCode | ಹೌದು | BCP-47 / ISO locale code from the language registry (docs/28). |
documents | object | ಹೌದು | `object_ref -> (field -> translated text)`. **Every `object_ref` the caller asked for is a key**, even when its inner object is empty — an omitted key would be indistinguishable… |
ಈ ಎಂಡ್ಪಾಯಿಂಟ್ ಹಿಂತಿರುಗಿಸಬಹುದಾದ ದೋಷಗಳು
422 · 429