Initial version

This commit is contained in:
Tom Kasper
2026-08-30 20:44:00 +02:00
commit 9aa2da72b5
612 changed files with 64514 additions and 0 deletions
+136
View File
@@ -0,0 +1,136 @@
# coding: utf-8
"""
eLabFTW REST API v2 Documentation
This document describes all available endpoints and methods for eLabFTW's API version 2. # noqa: E501
OpenAPI spec version: 2.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""
from __future__ import absolute_import
import re # noqa: F401
# python 2 and python 3 compatibility library
import six
from elabapi_python.api_client import ApiClient
class ReportsApi(object):
"""NOTE: This class is auto generated by the swagger code generator program.
Do not edit the class manually.
Ref: https://github.com/swagger-api/swagger-codegen
"""
def __init__(self, api_client=None):
if api_client is None:
api_client = ApiClient()
self.api_client = api_client
def get_reports(self, **kwargs): # noqa: E501
"""Get usage reports # noqa: E501
Get usage reports at the instance or team level. # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
>>> thread = api.get_reports(async_req=True)
>>> result = thread.get()
:param async_req bool
:param str format: Select the output format
:param str scope: Select the scope. Instance is for sysadmins only. Team will generate report for the current team. If scope is `compounds_history`, you can also provide `start` and `end` (format `YYYY-MM-DD`).
:param date start: Start date (YYYY-MM-DD). Only used when scope is `compounds_history`.
:param date end: End date (YYYY-MM-DD). Only used when scope is `compounds_history`.
:return: InlineResponse2004
If the method is called asynchronously,
returns the request thread.
"""
kwargs['_return_http_data_only'] = True
if kwargs.get('async_req'):
return self.get_reports_with_http_info(**kwargs) # noqa: E501
else:
(data) = self.get_reports_with_http_info(**kwargs) # noqa: E501
return data
def get_reports_with_http_info(self, **kwargs): # noqa: E501
"""Get usage reports # noqa: E501
Get usage reports at the instance or team level. # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
>>> thread = api.get_reports_with_http_info(async_req=True)
>>> result = thread.get()
:param async_req bool
:param str format: Select the output format
:param str scope: Select the scope. Instance is for sysadmins only. Team will generate report for the current team. If scope is `compounds_history`, you can also provide `start` and `end` (format `YYYY-MM-DD`).
:param date start: Start date (YYYY-MM-DD). Only used when scope is `compounds_history`.
:param date end: End date (YYYY-MM-DD). Only used when scope is `compounds_history`.
:return: InlineResponse2004
If the method is called asynchronously,
returns the request thread.
"""
all_params = ['format', 'scope', 'start', 'end'] # noqa: E501
all_params.append('async_req')
all_params.append('_return_http_data_only')
all_params.append('_preload_content')
all_params.append('_request_timeout')
params = locals()
for key, val in six.iteritems(params['kwargs']):
if key not in all_params:
raise TypeError(
"Got an unexpected keyword argument '%s'"
" to method get_reports" % key
)
params[key] = val
del params['kwargs']
collection_formats = {}
path_params = {}
query_params = []
if 'format' in params:
query_params.append(('format', params['format'])) # noqa: E501
if 'scope' in params:
query_params.append(('scope', params['scope'])) # noqa: E501
if 'start' in params:
query_params.append(('start', params['start'])) # noqa: E501
if 'end' in params:
query_params.append(('end', params['end'])) # noqa: E501
header_params = {}
form_params = []
local_var_files = {}
body_params = None
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(
['application/json', 'text/csv']) # noqa: E501
# Authentication setting
auth_settings = ['token'] # noqa: E501
return self.api_client.call_api(
'/reports', 'GET',
path_params,
query_params,
header_params,
body=body_params,
post_params=form_params,
files=local_var_files,
response_type='InlineResponse2004', # noqa: E501
auth_settings=auth_settings,
async_req=params.get('async_req'),
_return_http_data_only=params.get('_return_http_data_only'),
_preload_content=params.get('_preload_content', True),
_request_timeout=params.get('_request_timeout'),
collection_formats=collection_formats)