import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ModuleInformation:
module_name: Optional[str] = None
module_version: Optional[str] = None
module_date: datetime.datetime = datetime.datetime(1, 1, 1)
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ApplicationInfo:
application_name: Optional[str] = None
version: Optional[str] = None
version_gateway: Optional[str] = None
environment: Optional[str] = None
machine_name: Optional[str] = None
customer_code: Optional[str] = None
customer_brand_code: Optional[str] = None
database_name: Optional[str] = None
database_version: Optional[str] = None
database_server: Optional[str] = None
user_name: Optional[str] = None
user_login_name: Optional[str] = None
modules_information: Optional[List[ModuleInformation]] = None
website_intranet_url: Optional[str] = None
idb_opties: bool = False
on_premises_url: Optional[str] = None
on_line_url: Optional[str] = None
is_api_gateway: bool = False
has_c_r_m_module_active: bool = False
has_extranet_module_active: bool = False
has_huisstijl_m_o_module_active: bool = False
has_digitaal_ondertekenen_module_active: bool = False
has_d_o_voor_word_huisstijl: bool = False
has_d_o_voor_word_registreren: bool = False
has_d_o_voor_excel_huisstijl: bool = False
has_d_o_voor_excel_registreren: bool = False
has_d_o_voor_power_point_huisstijl: bool = False
has_d_o_voor_power_point_registreren: bool = False
has_d_o_voor_outlook_huisstijl: bool = False
has_d_o_voor_outlook_registreren: bool = False
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetApplicationInfo:
include_modules: bool = False
include_office_addins: bool = False
Python GetApplicationInfo DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/GetApplicationInfo HTTP/1.1
Host: doapigw.baasbv.nl
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<GetApplicationInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.Diagnostics.DTO">
<IncludeModules>false</IncludeModules>
<IncludeOfficeAddins>false</IncludeOfficeAddins>
</GetApplicationInfo>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<ApplicationInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.Diagnostics.DTO">
<ApplicationName>String</ApplicationName>
<CustomerBrandCode>String</CustomerBrandCode>
<CustomerCode>String</CustomerCode>
<DatabaseName>String</DatabaseName>
<DatabaseServer>String</DatabaseServer>
<DatabaseVersion>String</DatabaseVersion>
<Environment>String</Environment>
<HasCRMModuleActive>false</HasCRMModuleActive>
<HasDOVoorExcelHuisstijl>false</HasDOVoorExcelHuisstijl>
<HasDOVoorExcelRegistreren>false</HasDOVoorExcelRegistreren>
<HasDOVoorOutlookHuisstijl>false</HasDOVoorOutlookHuisstijl>
<HasDOVoorOutlookRegistreren>false</HasDOVoorOutlookRegistreren>
<HasDOVoorPowerPointHuisstijl>false</HasDOVoorPowerPointHuisstijl>
<HasDOVoorPowerPointRegistreren>false</HasDOVoorPowerPointRegistreren>
<HasDOVoorWordHuisstijl>false</HasDOVoorWordHuisstijl>
<HasDOVoorWordRegistreren>false</HasDOVoorWordRegistreren>
<HasDigitaalOndertekenenModuleActive>false</HasDigitaalOndertekenenModuleActive>
<HasExtranetModuleActive>false</HasExtranetModuleActive>
<HasHuisstijlMOModuleActive>false</HasHuisstijlMOModuleActive>
<IDBOpties>false</IDBOpties>
<IsApiGateway>false</IsApiGateway>
<IsEmpty>false</IsEmpty>
<MachineName>String</MachineName>
<ModulesInformation>
<ModuleInformation>
<ModuleDate>0001-01-01T00:00:00</ModuleDate>
<ModuleName>String</ModuleName>
<ModuleVersion>String</ModuleVersion>
</ModuleInformation>
</ModulesInformation>
<OnLineUrl>String</OnLineUrl>
<OnPremisesUrl>String</OnPremisesUrl>
<UserLoginName>String</UserLoginName>
<UserName>String</UserName>
<Version>String</Version>
<VersionGateway>String</VersionGateway>
<WebsiteIntranetUrl>String</WebsiteIntranetUrl>
</ApplicationInfo>