Skip to content

Commit ee78860

Browse files
authored
add version endpoint
1 parent 2e870ab commit ee78860

File tree

7 files changed

+41
-2
lines changed

7 files changed

+41
-2
lines changed

papermerge/core/serializers/__init__.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@
3535
TokenSerializer,
3636
CreateTokenSerializer
3737
)
38+
from .version import VersionSerializer
39+
3840

3941
__all__ = [
4042
'AutomateSerializer',
@@ -66,5 +68,6 @@
6668
'PagesMoveToFolderSerializer',
6769
'PagesMoveToDocumentSerializer',
6870
'TokenSerializer',
69-
'InboxCountSerializer'
71+
'InboxCountSerializer',
72+
'VersionSerializer'
7073
]
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
from rest_framework import serializers as rest_serializers
2+
3+
4+
class VersionSerializer(rest_serializers.Serializer):
5+
version = rest_serializers.CharField(max_length=32)

papermerge/core/urls.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,5 +112,10 @@
112112
views.OCRView.as_view(),
113113
name='tasks-ocr'
114114
),
115+
path(
116+
'version/',
117+
views.VersionView.as_view(),
118+
name='version'
119+
),
115120
re_path(r"^", include(router.urls)),
116121
]

papermerge/core/version.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
__version__ = "2.1.0a39"

papermerge/core/views/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
from .login import LoginView
3737
from .logout import LogoutView, LogoutAllView
3838
from .tokens import TokensViewSet
39+
from .version import VersionView
3940

4041
__all__ = [
4142
'AutomatesViewSet',
@@ -69,4 +70,5 @@
6970
'LogoutView',
7071
'LogoutAllView',
7172
'TokensViewSet',
73+
'VersionView'
7274
]

papermerge/core/views/version.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
from rest_framework.renderers import JSONRenderer as rest_framework_JSONRenderer
2+
from rest_framework.parsers import JSONParser as rest_framework_JSONParser
3+
from rest_framework.generics import GenericAPIView
4+
from rest_framework.response import Response
5+
6+
from papermerge.core.serializers import (
7+
VersionSerializer
8+
)
9+
from papermerge.core.version import __version__ as THE_VERSION
10+
11+
from .mixins import RequireAuthMixin
12+
13+
14+
class VersionView(RequireAuthMixin, GenericAPIView):
15+
serializer_class = VersionSerializer
16+
parser_classes = (rest_framework_JSONParser,)
17+
renderer_classes = (rest_framework_JSONRenderer,)
18+
19+
def get(self, request):
20+
"""
21+
Retrieves papermerge core module version
22+
"""
23+
return Response(data={'version': THE_VERSION})

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "papermerge-core"
3-
version = "2.1.0a36"
3+
version = "2.1.0a39"
44
description = "Open source document management system designed for scanned documents"
55
authors = ["Eugen Ciur <eugen@papermerge.com>"]
66
license = "Apache 2.0 License"

0 commit comments

Comments
 (0)