ScannerVision Web Server

<back to all web services

WebClientPicklistRequest

Requires Authentication
The following routes are available for this service:
GET/{Brand}/browse/{TemplateGuid}/{QuestionGuid}/{PicklistGuid}/
GET/{Brand}/browse/{TemplateGuid}/{QuestionGuid}/{PicklistGuid}/search/{SearchTerm}
GET/{Brand}/browse/{TemplateGuid}/{QuestionGuid}/{PicklistGuid}/{Path}
GET/{Brand}/browse/{TemplateGuid}/{QuestionGuid}/{PicklistGuid}/{Path}/search/{SearchTerm}
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


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class WebClientPicklistRequest(BrowsePicklistRequest):
    template_guid: Optional[str] = None
    question_guid: Optional[str] = None
    search_term: Optional[str] = None

Python WebClientPicklistRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

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/jsonl
Content-Type: text/jsonl
Content-Length: length

{"TemplateGuid":"String","QuestionGuid":"String","SearchTerm":"String","PicklistGuid":"String","Path":"String","Brand":"Desktop"}