| POST,OPTIONS | /v1/projects/{ProjectID}/rfis/{RfiID}/status |
|---|
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 Rfi:
rfi_i_d: int = 0
rfi_u_i_d: Optional[str] = None
project_i_d: int = 0
rfi_no: Optional[str] = None
subject: Optional[str] = None
question: Optional[str] = None
answer: Optional[str] = None
discipline: Optional[str] = None
asked_of: Optional[str] = None
status: Optional[str] = None
cost_impact: bool = False
schedule_impact: bool = False
submitted_date: Optional[datetime.datetime] = None
due_date: Optional[datetime.datetime] = None
answered_date: Optional[datetime.datetime] = None
closed_date: Optional[datetime.datetime] = None
promoted_change_order_i_d: Optional[int] = None
created_by: Optional[str] = None
created_at: Optional[datetime.datetime] = None
updated_at: Optional[datetime.datetime] = None
days_open: int = 0
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RfiResponse:
response_status: Optional[ResponseStatus] = None
rfi: Optional[Rfi] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RfiStatusRequest:
project_i_d: int = 0
rfi_i_d: int = 0
status: Optional[str] = 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.
POST /v1/projects/{ProjectID}/rfis/{RfiID}/status HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ProjectID: 0,
RfiID: 0,
Status: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
},
Rfi:
{
RfiID: 0,
RfiUID: 00000000000000000000000000000000,
ProjectID: 0,
RfiNo: String,
Subject: String,
Question: String,
Answer: String,
Discipline: String,
AskedOf: String,
Status: String,
CostImpact: False,
ScheduleImpact: False,
SubmittedDate: 0001-01-01,
DueDate: 0001-01-01,
AnsweredDate: 0001-01-01,
ClosedDate: 0001-01-01,
PromotedChangeOrderID: 0,
CreatedBy: String,
CreatedAt: 0001-01-01,
UpdatedAt: 0001-01-01,
DaysOpen: 0
}
}