Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Add support for Zip export #68

@Snaptraks

Description

@Snaptraks

The BookStack API now supports exporting documents as Zip files (https://demo.bookstackapp.com/api/docs#pages-exportZip), would it be possible for bookstack-file-exporter to support those too?

Right now, adding - zip in the formats config raises this exception

2025-09-09 09:16:50 [ERROR] Yaml configuration failed schema validation
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\p0129085\AppData\Local\uv\cache\archive-v0\-Xj_ItJTK_SRyXAPn6O7T\Scripts\bookstack-file-exporter.exe\__main__.py", line 10, in <module>
    sys.exit(main())
             ~~~~^^
  File "C:\Users\p0129085\AppData\Local\uv\cache\archive-v0\-Xj_ItJTK_SRyXAPn6O7T\Lib\site-packages\bookstack_file_exporter\__main__.py", line 12, in main
    run.entrypoint(args)
    ~~~~~~~~~~~~~~^^^^^^
  File "C:\Users\p0129085\AppData\Local\uv\cache\archive-v0\-Xj_ItJTK_SRyXAPn6O7T\Lib\site-packages\bookstack_file_exporter\run.py", line 19, in entrypoint
    config = ConfigNode(args)
  File "C:\Users\p0129085\AppData\Local\uv\cache\archive-v0\-Xj_ItJTK_SRyXAPn6O7T\Lib\site-packages\bookstack_file_exporter\config_helper\config_helper.py", line 56, in __init__
    self.user_inputs = self._generate_config(args.config_file)
                       ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "C:\Users\p0129085\AppData\Local\uv\cache\archive-v0\-Xj_ItJTK_SRyXAPn6O7T\Lib\site-packages\bookstack_file_exporter\config_helper\config_helper.py", line 78, in _generate_config
    raise err
  File "C:\Users\p0129085\AppData\Local\uv\cache\archive-v0\-Xj_ItJTK_SRyXAPn6O7T\Lib\site-packages\bookstack_file_exporter\config_helper\config_helper.py", line 74, in _generate_config
    user_inputs = models.UserInput(**yaml_input)
  File "C:\Users\p0129085\AppData\Local\uv\cache\archive-v0\-Xj_ItJTK_SRyXAPn6O7T\Lib\site-packages\pydantic\main.py", line 253, in __init__
    validated_self = self.__pydantic_validator__.validate_python(data, self_instance=self)
pydantic_core._pydantic_core.ValidationError: 1 validation error for UserInput
formats.4
  Input should be 'markdown', 'html', 'pdf' or 'plaintext' [type=literal_error, input_value='zip', input_type=str]
    For further information visit https://errors.pydantic.dev/2.11/v/literal_error

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions