> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Overleaf Import API

> Позвольте другим сайтам открывать фрагменты LaTeX и проекты в развёртывании на Kubernetes.

Import API (`/docs` и кнопки «Open in Ayakaleaf», модуль `open-in-overleaf`) работает в сервисе **web** каждого пода Ayakaleaf Pro и включён по умолчанию. Файлы, указанные по URL, скачиваются через linked-url-proxy в том же поде. Как его вызывать, описано на странице [Overleaf Import API](https://ayakaleaf-pro.mintlify.site/ru/on-premises/configuration/overleaf-toolkit/integrations/overleaf-import-api.md).

| | |
| - | - |
| Сервис | web (модуль `open-in-overleaf`); скачивание через linked-url-proxy |
| Извне → Overleaf | браузеры выполняют `GET` или `POST ${OVERLEAF_SITE_URL}/docs` с любого сайта |
| Под → вовне | скачивание `snip_uri` и `zip_uri` с ограничениями, описанными в разделе [Внешний URL](https://ayakaleaf-pro.mintlify.site/ru/on-premises/configuration/kubernetes/external-url.md) |
| Состояние | запрос посетителя, не вошедшего в систему, хранится в Redis 10 минут, пока он не войдёт |
| Периодические задачи | нет |

### Настройка

Для включения ничего не требуется. Связанные настройки в ConfigMap:

| Настройка | |
| - | - |
| `OVERLEAF_ALLOW_PUBLIC_ACCESS: "true"` | Посетители, не вошедшие в систему, могут открывать `/devs`, а отправленный ими запрос сохраняется до входа, см. [Публичный доступ](https://ayakaleaf-pro.mintlify.site/ru/on-premises/configuration/kubernetes/authentication/public-access.md). |
| `MAX_UPLOAD_SIZE` | Максимальный размер ZIP-архива в запросе, в МБ (по умолчанию `50`). Ваш ingress или балансировщик нагрузки тоже должен принимать тела запросов такого размера. |
| `OVERLEAF_LINKED_URL_*` | На какие адреса могут указывать `snip_uri` и `zip_uri`, см. [Внешний URL](https://ayakaleaf-pro.mintlify.site/ru/on-premises/configuration/kubernetes/external-url.md). |

### Несколько реплик

Ничего дополнительного не требуется. Запрос посетителя, не вошедшего в систему, хранится в Redis, поэтому он возобновляется на той реплике, на которую посетитель попадёт после входа.

### Проверено на Kubernetes

В Kubernetes 1.37 с одной репликой наши сквозные тесты Import API проходят (14 сценариев): страница `/devs` и её пример проекта, фрагменты, полные документы, ссылки в URL-кодировке и файлы из data URL, превращаемые в проекты, отклонение отправок, из которых нельзя создать проект, отклонение скачиваний с внутренних адресов, сохранение отправок и ссылок от не вошедших пользователей на время входа, а также, с `OVERLEAF_ALLOW_PUBLIC_ACCESS`, `/devs` для не вошедших посетителей и однократное возобновление отправленного фрагмента после входа; последний сценарий проходит и на трёх репликах за HAProxy.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.