| GET, PUT, POST, DELETE | /{Workspace}/DiscreetDocumentSchema | ||
|---|---|---|---|
| GET, PUT POST, DELETE | /{Workspace}/DiscreetDocumentSchema/{Type} |
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 DiscreetDocumentField:
key: Optional[str] = None
name: Optional[str] = None
description: Optional[str] = None
data_type: Optional[str] = None
indexed: bool = False
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DiscreetDocumentSchema:
workspace: Optional[str] = None
created: Optional[str] = None
last_updated: Optional[str] = None
type: Optional[str] = None
name: Optional[str] = None
description: Optional[str] = None
field_defs: Optional[List[DiscreetDocumentField]] = None
enabled: Optional[bool] = None
Python DiscreetDocumentSchema DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /{Workspace}/DiscreetDocumentSchema HTTP/1.1
Host: dev.fieldsquared.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Workspace: String,
Created: String,
LastUpdated: String,
Type: String,
Name: String,
Description: String,
FieldDefs:
[
{
Key: String,
Name: String,
Description: String,
DataType: String,
Indexed: False
}
],
Enabled: False
}