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: Optional[datetime.datetime] = None
@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: Optional[bool] = None
on_premises_url: Optional[str] = None
on_line_url: Optional[str] = None
is_api_gateway: Optional[bool] = None
has_c_r_m_module_active: Optional[bool] = None
has_extranet_module_active: Optional[bool] = None
has_huisstijl_m_o_module_active: Optional[bool] = None
has_digitaal_ondertekenen_module_active: Optional[bool] = None
has_d_o_voor_word_huisstijl: Optional[bool] = None
has_d_o_voor_word_registreren: Optional[bool] = None
has_d_o_voor_excel_huisstijl: Optional[bool] = None
has_d_o_voor_excel_registreren: Optional[bool] = None
has_d_o_voor_power_point_huisstijl: Optional[bool] = None
has_d_o_voor_power_point_registreren: Optional[bool] = None
has_d_o_voor_outlook_huisstijl: Optional[bool] = None
has_d_o_voor_outlook_registreren: Optional[bool] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetApplicationInfo:
include_modules: Optional[bool] = None
include_office_addins: Optional[bool] = None
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: digiofficeapigateway.deltares.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>