sfgboxapi

<back to all web services

MediaAutoQueryEdit

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 Media:
    # @Required()
    id: int = 0

    # @Required()
    # @References(typeof(Tenants))
    tenants_id: int = 0

    # @Required()
    entity: Optional[str] = None

    # @Required()
    entity_id: int = 0

    # @Required()
    media_type: Optional[str] = None

    media_path: Optional[str] = None
    # @References(typeof(Questionnairs))
    questionnairs_id: Optional[int] = None

    name: Optional[str] = None
    free: bool = False
    public_access_guid: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class MediaAutoQueryEdit(Media, IUpdateDb[Media]):
    pass

Python MediaAutoQueryEdit DTOs

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

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /jsv/reply/MediaAutoQueryEdit HTTP/1.1 
Host: api-stage.smartfarmertech.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	tenantsId: 0,
	entity: String,
	entityId: 0,
	mediaType: String,
	mediaPath: String,
	questionnairsId: 0,
	name: String,
	free: False,
	publicAccessGuid: 00000000000000000000000000000000
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	tenantsId: 0,
	entity: String,
	entityId: 0,
	mediaType: String,
	mediaPath: String,
	questionnairsId: 0,
	name: String,
	free: False,
	publicAccessGuid: 00000000000000000000000000000000
}