| All Verbs | /{Brand}/showscansettings/{TemplateGuid} |
|---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class ShowScanSettings : RequestBase()
{
var TemplateGuid:String? = null
}
open class RequestBase : DtoBase()
{
}
open class DtoBase
{
var Brand:Brand? = null
}
enum class Brand
{
Desktop,
Hp,
Kyocera,
NeaScan,
Samsung,
FujiXerox,
Ta,
Utax,
Epson,
ScanFront400,
Sharp,
Ricoh,
FujiFilm,
}
open class GetScanSettingsResponse : GetTemplateResponse()
{
var ScanSettings:IScanSettings? = null
var ColourLabel:String? = null
var OrientationLabel:String? = null
var ResolutionLabel:String? = null
var SidesLabel:String? = null
var SizeLabel:String? = null
var SourceLabel:String? = null
var TypeLabel:String? = null
var ScanContinuouslyLabel:String? = null
var MixedSizesLabel:String? = null
}
open class GetTemplateResponse : ScanResponseBase()
{
var ServerAddress:String? = null
var ServerPort:Int? = null
}
open class ScanResponseBase : ResponseBase()
{
var Template:IClientTemplate? = null
var GlobalQuestions:ArrayList<IClientQuestion> = ArrayList<IClientQuestion>()
var CanEnableScanButton:Boolean? = null
}
open class ResponseBase : DtoBase()
{
var SelectedUiLanguage:String? = null
var svSession:String? = null
var Title:String? = null
var PageTip:String? = null
var NewBrowser:Boolean? = null
var ScanFront400TA:Boolean? = null
var ScanFront400UTAX:Boolean? = null
}
open interface IClientTemplate
{
var Description:String?
var Icon:ByteArray?
var ModificationInfo:ITemplateModificationInfo?
var Name:String?
var Questions:ArrayList<IClientQuestion>?
var Template:ITemplate?
var TemplateGuid:String?
}
open interface ITemplateModificationInfo
{
var Guid:String?
var TemplateModificationDateTime:Date?
var IconModificationDateTime:Date?
}
open interface IClientQuestion : ITemplateQuestion
{
var QuestionGuid:String?
var ValueDisplayed:String?
var ValueReturned:String?
var Answered:Boolean?
var RegexMatches:Boolean?
var RegexHint:String?
}
open interface ITemplate : IStatus
{
var TemplateVersion:String?
var ScannerVisionVersion:String?
var Guid:String?
var BeginScript:String?
var EndScript:String?
var TemplateType:TemplateType?
var General:IGeneral?
var Capture:ICapture?
var XmlMetadataImport:IXmlMetadataImport?
var Notifications:INotifications?
var Validator:IValidator?
}
enum class TemplateType
{
Workflow,
FreeForm,
}
open interface IGeneral : IInterface
{
var Name:String?
var Description:String?
var Icon:String?
var Schedule:ITemplateSchedule?
var Rejection:IRejection?
var BadDocumentRejection:IBadDocumentRejection?
var PdfLoadResolution:PdfLoadResolution?
}
open interface ITemplateSchedule : IInterface
{
var Time:TimeSpan?
var EndTime:TimeSpan?
var NoEndTime:Boolean?
var Type:TemplateScheduleType?
}
enum class TemplateScheduleType
{
Interval,
Fixed,
}
open interface IRejection
{
var RejectAfter:Int?
var RejectionPath:String?
var ShareCredentials:ICredentials?
}
open interface ICredentials : IInterface
{
var Username:String?
var Password:String?
}
open interface IBadDocumentRejection : IStatus
{
var RejectionPath:String?
var ShareCredentials:ICredentials?
}
enum class PdfLoadResolution
{
Default,
Dpi100,
Dpi150,
Dpi200,
Dpi300,
Dpi400,
Dpi500,
Dpi600,
}
open interface ICapture : IInterface
{
var CaptureSources:ReadOnlyCollection<ICaptureSource>?
}
open interface ICaptureSource : IStatus
{
}
open interface IXmlMetadataImport : IStatus
{
var SampleDocumentName:String?
var TagMappings:ReadOnlyCollection<IXmlMetadataImportTagMapping>?
var NamespaceMappings:ReadOnlyCollection<IXmlMetadataImportNamespaceMapping>?
}
open interface IXmlMetadataImportTagMapping : IInterface
{
var XPathExpression:String?
var Metadata:IStringMetadata?
}
open interface IStringMetadata : IMetadata
{
var IsSecure:Boolean?
var SampleValue:String?
var Value:String?
}
open interface IXmlMetadataImportNamespaceMapping : IInterface
{
var Prefix:String?
var Name:String?
}
open interface INotifications : IStatus
{
var Notifications:ReadOnlyCollection<INotification>?
}
open interface INotification : IStatus
{
var Description:String?
var To:String?
var Subject:String?
var Body:String?
var Cc:String?
var Bcc:String?
var NotificationType:NotificationType?
}
enum class NotificationType
{
FailureOnly,
SuccessOnly,
Always,
}
open interface IValidator
{
var ValidationErrors:IValidationErrors?
var IsValid:Boolean?
}
open interface IValidationErrors
{
var Errors:ReadOnlyCollection<IValidationError>?
}
open interface IValidationError
{
var Property:String?
var ErrorMessage:String?
}
open interface IScanSettings
{
var Colour:IScanSetting<ScanColour>?
var Orientation:IScanSetting<ScanOrientation>?
var Resolution:IScanSetting<ScanResolution>?
var Sides:IScanSetting<ScanSide>?
var Size:IScanSetting<ScanSize>?
var Source:IScanSetting<ScanSource>?
var Type:IScanSetting<ScanType>?
var ScanContinuously:IScanSetting<BoolSetting>?
var MixedSizes:IScanSetting<BoolSetting>?
}
open interface IScanSetting<T>
{
var IsLocked:Boolean?
var Items:IList<IScanSettingItem<T>>?
var SelectedItem:String?
}
enum class ScanColour
{
BlackAndWhite,
Greyscale,
Colour,
Auto,
}
enum class ScanOrientation
{
Portrait,
Landscape,
}
enum class ScanResolution
{
Dpi100,
Dpi200,
Dpi300,
Dpi400,
Dpi600,
}
enum class ScanSide
{
Simplex,
Duplex,
}
enum class ScanSize
{
Auto,
A3,
A4,
A5,
B4,
B5,
Letter,
Legal,
Executive,
Folio,
AutoLong,
A4R,
A5R,
A6R,
B6R,
}
enum class ScanSource
{
Adf,
Glass,
Auto,
}
enum class ScanType
{
Text,
Photo,
TextAndPhoto,
}
enum class BoolSetting
{
True,
False,
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /{Brand}/showscansettings/{TemplateGuid} HTTP/1.1
Host: buildmax.org
Accept: application/json
Content-Type: application/json
Content-Length: length
{"TemplateGuid":"String","Brand":"Desktop"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"ColourLabel":"Colors","OrientationLabel":"Orientation","ResolutionLabel":"Resolution","SidesLabel":"Sides","SizeLabel":"Size","SourceLabel":"Source","TypeLabel":"Type","ScanContinuouslyLabel":"Scan continuously","MixedSizesLabel":"Mix size","ServerAddress":"String","ServerPort":0,"CanEnableScanButton":true,"SelectedUiLanguage":"String","svSession":"String","Title":"String","PageTip":"String","NewBrowser":false,"ScanFront400TA":false,"ScanFront400UTAX":false,"Brand":"Desktop"}