| GET | /Enquiries/Details |
|---|
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 EnquiriesDetails:
id: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class EntityViewModel:
id: int = 0
guid: Optional[str] = None
type: Optional[str] = None
name: Optional[str] = None
super_trader: bool = False
company_domain: Optional[str] = None
kyc_started_by: int = 0
kyc_completed_by: int = 0
etsmoha_account: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetAllAccessLevelsForEntityContactIdViewModel:
id: int = 0
allowed: bool = False
name: Optional[str] = None
description: Optional[str] = None
pretty_text: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class EntityContactViewModel:
id: int = 0
guid: Optional[str] = None
entity_id: int = 0
first_name: Optional[str] = None
last_name: Optional[str] = None
initials: Optional[str] = None
password: Optional[str] = None
email_address: Optional[str] = None
dark_mode: bool = False
entity: Optional[EntityViewModel] = None
last_active: Optional[datetime.datetime] = None
image_guid: Optional[str] = None
dialing_code_country_id: Optional[int] = None
telephone_number: Optional[str] = None
is_bridge_client: bool = False
access_levels: Optional[List[GetAllAccessLevelsForEntityContactIdViewModel]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetEnquiryGradesViewModel:
id: int = 0
quantity_from: int = 0
quantity_to: int = 0
quantity: Optional[str] = None
comments: Optional[str] = None
grade: Optional[str] = None
product_id: int = 0
version_id: int = 0
grade_id: int = 0
unit_id: int = 0
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetEnquiryDetailsViewModel:
id: int = 0
access_code: int = 0
entity_contact_id: int = 0
guid: Optional[str] = None
port_code: Optional[str] = None
port_name: Optional[str] = None
country_name: Optional[str] = None
flag_round: Optional[bytes] = None
date_from: datetime.datetime = datetime.datetime(1, 1, 1)
date_to: datetime.datetime = datetime.datetime(1, 1, 1)
agent_name: Optional[str] = None
buyer_account_name: Optional[str] = None
request_terms: Optional[str] = None
general_comments: Optional[str] = None
vessel_name: Optional[str] = None
imo_number: int = 0
scratchpad_id: int = 0
scratchpad: Optional[str] = None
delivery_method: Optional[str] = None
single_chat_guid: Optional[str] = None
single_chat_entity_id: int = 0
total_chats: int = 0
chat_ids: Optional[List[str]] = None
risk_rating_subscription_status: bool = False
windward_report_live: bool = False
windward_report_expiry_date_time: datetime.datetime = datetime.datetime(1, 1, 1)
latest_r_a_g_status: Optional[str] = None
vessel_windward_url: Optional[str] = None
port_id: int = 0
can_forward_enquiry: bool = False
vessel_id: int = 0
delivery_method_id: Optional[int] = None
credit_term_days: int = 0
requested_terms_type: Optional[str] = None
button_group: Optional[str] = None
can_send_broadcast_chat: bool = False
account_id: int = 0
chat_list: Optional[str] = None
entity_contact: Optional[EntityContactViewModel] = None
get_enquiry_grades: Optional[List[GetEnquiryGradesViewModel]] = None
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 /Enquiries/Details HTTP/1.1 Host: internal.thebunkerbridge.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Id: 0,
AccessCode: 0,
EntityContactId: 0,
Guid: 00000000000000000000000000000000,
PortCode: String,
PortName: String,
CountryName: String,
FlagRound: AA==,
DateFrom: 0001-01-01,
DateTo: 0001-01-01,
AgentName: String,
BuyerAccountName: String,
RequestTerms: String,
GeneralComments: String,
VesselName: String,
IMONumber: 0,
ScratchpadId: 0,
Scratchpad: String,
DeliveryMethod: String,
SingleChatGuid: 00000000000000000000000000000000,
SingleChatEntityId: 0,
TotalChats: 0,
ChatIds:
[
00000000000000000000000000000000
],
RiskRatingSubscriptionStatus: False,
WindwardReportLive: False,
WindwardReportExpiryDateTime: 0001-01-01,
LatestRAGStatus: String,
VesselWindwardUrl: String,
PortId: 0,
CanForwardEnquiry: False,
VesselId: 0,
DeliveryMethodId: 0,
CreditTermDays: 0,
RequestedTermsType: String,
ButtonGroup: String,
CanSendBroadcastChat: False,
AccountId: 0,
ChatList: String,
EntityContact:
{
Id: 0,
Guid: 00000000000000000000000000000000,
EntityId: 0,
FirstName: String,
LastName: String,
Initials: String,
Password: String,
EmailAddress: String,
DarkMode: False,
Entity:
{
Id: 0,
Guid: 00000000000000000000000000000000,
Type: String,
Name: String,
SuperTrader: False,
CompanyDomain: String,
KYCStartedBy: 0,
KYCCompletedBy: 0,
ETSMOHAAccount: String
},
LastActive: 0001-01-01,
ImageGuid: 00000000000000000000000000000000,
DialingCodeCountryId: 0,
TelephoneNumber: String,
IsBridgeClient: False,
AccessLevels:
[
{
Id: 0,
Allowed: False,
Name: String,
Description: String,
PrettyText: String
}
]
},
GetEnquiryGrades:
[
{
Id: 0,
QuantityFrom: 0,
QuantityTo: 0,
Quantity: String,
Comments: String,
Grade: String,
ProductId: 0,
VersionId: 0,
GradeId: 0,
UnitId: 0
}
]
}