Mayan API Client
Python client for the Mayan EDMS REST API.
Free software: ISC license
Installation
Install from PyPI:
pip install mayan-api_client
Usage
This is a thin wrapper of the slumber API client. Use the <app>.<resource>.<verb> nomeclature.
Examples:
from mayan_api_client import API api = API(host='http://127.0.0.1:8000', username='admin', password='password')
Show general information of the connected Mayan EDMS server:
api._info
{u'contact': u'roberto.rosario@mayan-edms.com',
u'description': u'Free Open Source Document Management System.',
u'license': u'Apache 2.0',
u'licenseUrl': u'http://www.apache.org/licenses/LICENSE-2.0.html',
u'title': u'Mayan EDMS API Documentation'}
Show a list of all available apps:
api._apps [u'checkouts', u'document_indexing', u'documents', u'dynamic_search', u'folders', u'metadata', u'ocr', u'permissions', u'rest', u'sources', u'tags', u'user_management']
Create a document type:
api.documents.document_types.post({'label': 'new document type'})
{u'delete_time_period': 30,
u'delete_time_unit': u'days',
u'documents': u'http://127.0.0.1:8000/api/documents/document_types/2/documents/',
u'documents_count': 0,
u'id': 2,
u'label': u'new document type',
u'trash_time_period': None,
u'trash_time_unit': None,
u'url': u'http://127.0.0.1:8000/api/documents/document_types/2/'}
Upload a new document:
with open('/tmp/test_document.pdf') as file_object:
response = api.documents.documents.post({'document_type': 2}, files={'file': file_object})
print response
{u'label': u'test_document.pdf', u'document_type': 2, u'description': u'', u'language': u'eng', u'id': 2}
Get a list of all documents:
api.documents.documents.get()
{u'count': 1,
u'next': u'http://127.0.0.1:8000/api/documents/documents/?page=2',
u'previous': None,
u'results': [{u'date_added': u'2016-02-02T23:06:44.880732Z',
u'description': u'',
u'document_type': u'http://127.0.0.1:8000/api/documents/document_types/2/',
u'document_type_label': u'Default',
u'id': 2,
u'label': u'test_document.pdf',
u'language': u'eng',
u'latest_version': {u'checksum': u'452a6e59f3320f99bfe88b5f7efb0b9323df20457c19c320efce2b9404b96d82',
u'comment': u'',
u'document': u'http://127.0.0.1:8000/api/documents/documents/2/',
u'encoding': u'binary',
u'file': u'1a8b87de-bca9-416a-beb2-49d817625d56',
u'mimetype': u'application/pdf',
u'pages': [{u'document_version': u'http://127.0.0.1:8000/api/documents/document_version/2/',
u'image': u'http://127.0.0.1:8000/api/documents/document_page/2/image/',
u'page_number': 1,
u'url': u'http://127.0.0.1:8000/api/documents/document_page/2/'}],
u'revert': u'http://127.0.0.1:8000/api/documents/document_version/2/revert/',
u'timestamp': u'2016-02-02T23:06:45.318494Z',
u'url': u'http://127.0.0.1:8000/api/documents/document_version/2/'},
u'url': u'http://127.0.0.1:8000/api/documents/documents/2/',
u'uuid': u'b1973f42-41f2-41e7-b812-07fa929689ec',
u'versions': u'http://127.0.0.1:8000/api/documents/documents/19/versions/'},]
}
Get second page of a list of all documents:
api.documents.documents.get(page=2)
Get documents by id:
api.documents.documents(2).get()
Add a document to a folder:
api.folders.folders(1).documents.post({'document': 2})
{u'document': 2}
Credits
Roberto Rosario
History
0.5.0 (2016-1-22)
Initial release.
Release files for mayan-api_client 0.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mayan-api_client-0.5.0.tar.gz | 6.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mayan_api_client-0.5.0-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 12.6 kB
Release files / mayan-api_client-0.5.0.tar.gz
| Download URL | mayan-api_client-0.5.0.tar.gz |
|---|---|
| Size | 6.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
58d12a4260e860bcb9a92318a531f9b45ebb2adb64f30f5f598ab4d1935e47f0
|
|
BLAKE2b-256 checksum How to use checksums |
b1f0a7db473eaceaf42ad8f437e18f274001abfe99ca6d751a973297c490e2c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / mayan_api_client-0.5.0-py2.py3-none-any.whl
| Download URL | mayan_api_client-0.5.0-py2.py3-none-any.whl |
|---|---|
| Size | 6.3 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
b8a4d2ea9c39bf35706ee322434c9ebb1a269ab6d5a809f3eaea002d19690f52
|
|
BLAKE2b-256 checksum How to use checksums |
3eb591565306d33614c476f3fc8fe08c995c6694ebfe09b1de86a07d9c23ce4e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |