# Хранение данных

## Архивирование подписанных данных {#data-archive}
В сервисе реализована опциональная функция архивирования подписанных данных, именно тех электронных документов (или просто файлов), которые были подписаны электронной цифровой подписью. Данные хранятся в архиве бессрочно, изменять, либо удалять данные в архиве невозможно. Функция может быть полезна, к примеру, в следующих сценариях:
- для предприятий - в качестве архива электронных документов, под которыми присутствуют подписи сотрудников компании;
- для разработчиков и операторов систем, порталов и приложений - для обеспечения сохранности и неизменности подлинников электронных документов в отдельном независимом хранилище;
- для физических лиц - в качестве архива электронных документов, подписанных, как в качестве физического лица, так и в качестве сотрудника различных компаний.

Активировать функцию архивирования подписанных данных нужно в настройках пользователя или организации, по умолчанию она отключена. В том случае, если функция включена в настройках пользователя, то сервис будет архивировать все документы, которое подписывает этот пользователь как физическое лицо. В том случае, если функция архивирования включена в настройках организации, то сервис будет архивировать все документы подписанные сотрудниками соответствующего юридического лица.

Так же доступна опция принудительного архивирования определенного документа с помощью параметра `forceArchive` настроек документа: [`POST` `/api/{id}/settings` - изменение настроек документа](/support/developers/api-documents/index.md#document-settings), этот параметр можно указывать только на этапе первоначальной регистрации/предрегистрации документа.

Архивирование данных выполняется автоматически (в том случае, если в настройках хотя бы одной из подписавших документ сторон включено архивирование и, при этом, не превышена квота) в рамках обработки следующих API:
- [`POST` `/api/{id}/data` - фиксация значений хешей документа](/support/developers/api-documents/index.md#document-hash)
- [`POST` `/api/{id}/verify` - проверка подписей](/support/developers/api-documents/index.md#document-verify-signatures)
- [`POST` `/api/{id}/buildDDC?fileName=X&withoutDocumentVisualization=false&withoutSignaturesVisualization=false&withoutQRCodesInSignaturesVisualization=false&withoutID=false&qrWithIDLink=false&withLabelVerified=false&language=ru` - формирование карточки электронного документа](/support/developers/api-documents/index.md#build-ddc)
- [`POST` `/api/{id}/buildEzSigner` - формирование CMS для сервиса ezSigner.kz](/support/developers/api-documents/index.md#build-ezSigner)
- [`POST` `/api/parseDDC?registerUnknownSignatures=false` - разбор карточки электронного документа](/support/developers/api-other/index.md#parse-ddc)

Единственное техническое требование - наличие HTTP заголовка `Content-Length` с корректным размером данных, большинство библиотек для работы с HTTP устанавливают этот заголовок автоматически.

Отдельного выделенного API для архивирования данных не предусмотрено, в том случае, если необходимо добавить в архив данные уже зарегистрированного документа (к примеру для того, чтобы добавить в архив ранее подписанные документы после включения архивирования), можно воспользоваться [`POST` `/api/{id}/verify` - проверка подписей](/support/developers/api-documents/index.md#document-verify-signatures).

Для получения данных из архива следует использовать API [`GET` `/api/{id}/data` - получение подписанных данных из архива или временного хранилища](/support/developers/api-documents/index.md#document-archived-data).

Определить, добавлены ли данные в архив, можно по полю `dataArchived` в ответах API, выполняющих архивирование данных, а так же [`GET` `/api/{id}?lastSignId=X` - получение данных о зарегистрированном документе](/support/developers/api-documents/index.md#document-info) и [`GET` `/api?from=xxx&until=yyy&organization=true&dataArchived=true&searchQuery=search+string&includeSignatures=false` - перечисление документов аутентифицированного пользователя или системы](/support/developers/api-documents/index.md#documents-search).

Для каждого пользователя и организации существует квота, ограничивающая объем соответствующего архива. Информация о квотах и способах их увеличения доступна на странице [Для корпоративных клиентов](/products/prices/). Текущую квоту и объем данных в архиве можно получить с помощью [`GET` `/api/settings` - получить настройки аутентифицированного пользователя](/support/developers/api-settings/index.md#user-settings) и [`GET` `/api/organizationSettings` - получить настройки организации аутентифицированного пользователя](/support/developers/api-settings/index.md#organization-settings).

Для информирования пользователей о событиях, связанных с архивированием, предусмотрены специальные уведомления, рассылаемые [по электронной почте](/support/developers/notifications/index.md#notifications-email). Эти уведомления рассылаются на отдельный настраиваемый адрес электронной почты, указанный в поле `dataArchiveContactEmail`, настраиваемый через [`POST` `/api/settings` - сохранить настройки аутентифицированного пользователя](/support/developers/api-settings/index.md#user-settings-apply) и [`POST` `/api/organizationSettings` - сохранить настройки организации](/support/developers/api-settings/index.md#organization-settings-apply).


## Временное хранение подписанных данных {#data-temp-storage}
В сервисе реализована опциональная функция временного хранения подписанных данных, эта функция похожа на архивирование подписанных данных, основное отличие заключается в том, что во временном хранилище данные хранятся не более определенного промежутка времени. Иначе говоря мы гарантируем что данные из временного хранилища будут удалены, а данные в архиве останутся. Функция может быть полезна в тех случаях, когда есть потребность временно сохранить данные на нашем сервисе, к примеру:
- чтобы контрагентам не нужно было сохранять документы из электронных писем с уведомлениями и загружать их перед подписанием;
- чтобы можно было использовать упрощенные API для подписания [документов](/support/developers/api-documents/index.md#document-sign-via-egov-qr) и [пакетов документов](/support/developers/api-packages/index.md#package-sign-via-egov-qr) через eGov m/b.

Активировать временное хранение возможно при регистрации документа: [`POST` `/api` - регистрация нового документа в системе](/support/developers/api-documents/index.md#document-registration), за это отвечает `tempStorageAfterRegistration`.

