| All Verbs | /{Brand}/browse/{BrowseType}/ | ||
|---|---|---|---|
| All Verbs | /{Brand}/browse/{BrowseType}/ | ||
| All Verbs | /{Brand}/browse/{BrowseType}/{Path} | ||
| All Verbs | /{Brand}/browse/{BrowseType}/{Path} |
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
class Brand(str, Enum):
DESKTOP = 'Desktop'
HP = 'Hp'
KYOCERA = 'Kyocera'
NEA_SCAN = 'NeaScan'
SAMSUNG = 'Samsung'
FUJI_XEROX = 'FujiXerox'
TA = 'Ta'
UTAX = 'Utax'
EPSON = 'Epson'
SCAN_FRONT400 = 'ScanFront400'
SHARP = 'Sharp'
RICOH = 'Ricoh'
FUJI_FILM = 'FujiFilm'
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DtoBase:
brand: Optional[Brand] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RequestBase(DtoBase):
pass
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BrowseRequest(RequestBase):
path: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BrowsePicklistRequest(BrowseRequest):
picklist_guid: Optional[str] = None
answers: Optional[Dict[str, str]] = None
Python BrowsePicklistRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /{Brand}/browse/{BrowseType}/ HTTP/1.1
Host: buildmax.org
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"PicklistGuid":"String","Path":"String","Brand":"Desktop"}