| GET | /api/v1/marketplace/products |
|---|
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 Status:
message: Optional[str] = None
status_code: int = 0
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BaseResponse:
status: Optional[Status] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DashboardProduct:
id: Optional[str] = None
description: Optional[str] = None
image: Optional[str] = None
type: Optional[str] = None
price: Optional[str] = None
city_region_name: Optional[str] = None
price_type: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetMarketplaceProductsResponse(BaseResponse):
products: Optional[List[DashboardProduct]] = None
offset: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetMarketplaceProducts(IGet):
category_name: Optional[str] = None
page_size: Optional[int] = None
offset: Optional[str] = None
Python GetMarketplaceProducts 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.
GET /api/v1/marketplace/products HTTP/1.1 Host: pecuario-backend.develsystems.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
products:
[
{
id: String,
description: String,
image: String,
type: String,
price: String,
cityRegionName: String,
priceType: String
}
],
offset: String
}