| GET,OPTIONS | /v1/project/{ProjectID}/agreements | ||
|---|---|---|---|
| GET,POST,PUT,DELETE,OPTIONS | /v1/serviceagreement | ||
| GET,DELETE,OPTIONS | /v1/serviceagreement/{AgreementID} |
import 'package:servicestack/servicestack.dart';
class ServiceAgreement implements IConvertible
{
int? AgreementID;
String? AgreementUID;
String? TenantId;
String? BranchId;
String? BranchName;
int? ProjectID;
String? ProjectName;
String? Name;
String? Status;
String? PricingShape;
double? MonthlyAmount;
double? PerVisitAmount;
String? SkipPolicy;
int? SeasonStartMonth;
int? SeasonStartDay;
int? SeasonEndMonth;
int? SeasonEndDay;
String? RecurrenceFrequency;
String? RecurrenceBy;
String? RecurrenceByValue;
DateTime? EffectiveStartDate;
DateTime? EndDate;
int? PreferredCrewID;
String? PreferredCrewName;
String? ExternalRef;
String? CreatedBy;
DateTime? CreatedAt;
String? UpdatedBy;
DateTime? UpdatedAt;
DateTime? NextVisitDate;
int? VisitsThisPeriod;
ServiceAgreement({this.AgreementID,this.AgreementUID,this.TenantId,this.BranchId,this.BranchName,this.ProjectID,this.ProjectName,this.Name,this.Status,this.PricingShape,this.MonthlyAmount,this.PerVisitAmount,this.SkipPolicy,this.SeasonStartMonth,this.SeasonStartDay,this.SeasonEndMonth,this.SeasonEndDay,this.RecurrenceFrequency,this.RecurrenceBy,this.RecurrenceByValue,this.EffectiveStartDate,this.EndDate,this.PreferredCrewID,this.PreferredCrewName,this.ExternalRef,this.CreatedBy,this.CreatedAt,this.UpdatedBy,this.UpdatedAt,this.NextVisitDate,this.VisitsThisPeriod});
ServiceAgreement.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
AgreementID = json['AgreementID'];
AgreementUID = json['AgreementUID'];
TenantId = json['TenantId'];
BranchId = json['BranchId'];
BranchName = json['BranchName'];
ProjectID = json['ProjectID'];
ProjectName = json['ProjectName'];
Name = json['Name'];
Status = json['Status'];
PricingShape = json['PricingShape'];
MonthlyAmount = JsonConverters.toDouble(json['MonthlyAmount']);
PerVisitAmount = JsonConverters.toDouble(json['PerVisitAmount']);
SkipPolicy = json['SkipPolicy'];
SeasonStartMonth = json['SeasonStartMonth'];
SeasonStartDay = json['SeasonStartDay'];
SeasonEndMonth = json['SeasonEndMonth'];
SeasonEndDay = json['SeasonEndDay'];
RecurrenceFrequency = json['RecurrenceFrequency'];
RecurrenceBy = json['RecurrenceBy'];
RecurrenceByValue = json['RecurrenceByValue'];
EffectiveStartDate = JsonConverters.fromJson(json['EffectiveStartDate'],'DateTime',context!);
EndDate = JsonConverters.fromJson(json['EndDate'],'DateTime',context!);
PreferredCrewID = json['PreferredCrewID'];
PreferredCrewName = json['PreferredCrewName'];
ExternalRef = json['ExternalRef'];
CreatedBy = json['CreatedBy'];
CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
UpdatedBy = json['UpdatedBy'];
UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
NextVisitDate = JsonConverters.fromJson(json['NextVisitDate'],'DateTime',context!);
VisitsThisPeriod = json['VisitsThisPeriod'];
return this;
}
Map<String, dynamic> toJson() => {
'AgreementID': AgreementID,
'AgreementUID': AgreementUID,
'TenantId': TenantId,
'BranchId': BranchId,
'BranchName': BranchName,
'ProjectID': ProjectID,
'ProjectName': ProjectName,
'Name': Name,
'Status': Status,
'PricingShape': PricingShape,
'MonthlyAmount': MonthlyAmount,
'PerVisitAmount': PerVisitAmount,
'SkipPolicy': SkipPolicy,
'SeasonStartMonth': SeasonStartMonth,
'SeasonStartDay': SeasonStartDay,
'SeasonEndMonth': SeasonEndMonth,
'SeasonEndDay': SeasonEndDay,
'RecurrenceFrequency': RecurrenceFrequency,
'RecurrenceBy': RecurrenceBy,
'RecurrenceByValue': RecurrenceByValue,
'EffectiveStartDate': JsonConverters.toJson(EffectiveStartDate,'DateTime',context!),
'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!),
'PreferredCrewID': PreferredCrewID,
'PreferredCrewName': PreferredCrewName,
'ExternalRef': ExternalRef,
'CreatedBy': CreatedBy,
'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
'UpdatedBy': UpdatedBy,
'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!),
'NextVisitDate': JsonConverters.toJson(NextVisitDate,'DateTime',context!),
'VisitsThisPeriod': VisitsThisPeriod
};
getTypeName() => "ServiceAgreement";
TypeContext? context = _ctx;
}
class ServiceAgreementResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
List<ServiceAgreement>? ServiceAgreement = [];
ServiceAgreementResponse({this.ResponseStatus,this.ServiceAgreement});
ServiceAgreementResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
ServiceAgreement = JsonConverters.fromJson(json['ServiceAgreement'],'List<ServiceAgreement>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'ServiceAgreement': JsonConverters.toJson(ServiceAgreement,'List<ServiceAgreement>',context!)
};
getTypeName() => "ServiceAgreementResponse";
TypeContext? context = _ctx;
}
class ServiceAgreementRequest implements IConvertible
{
int? AgreementID;
int? ProjectID;
List<ServiceAgreement>? ServiceAgreement = [];
ServiceAgreementRequest({this.AgreementID,this.ProjectID,this.ServiceAgreement});
ServiceAgreementRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
AgreementID = json['AgreementID'];
ProjectID = json['ProjectID'];
ServiceAgreement = JsonConverters.fromJson(json['ServiceAgreement'],'List<ServiceAgreement>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'AgreementID': AgreementID,
'ProjectID': ProjectID,
'ServiceAgreement': JsonConverters.toJson(ServiceAgreement,'List<ServiceAgreement>',context!)
};
getTypeName() => "ServiceAgreementRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'ServiceAgreement': TypeInfo(TypeOf.Class, create:() => ServiceAgreement()),
'ServiceAgreementResponse': TypeInfo(TypeOf.Class, create:() => ServiceAgreementResponse()),
'List<ServiceAgreement>': TypeInfo(TypeOf.Class, create:() => <ServiceAgreement>[]),
'ServiceAgreementRequest': TypeInfo(TypeOf.Class, create:() => ServiceAgreementRequest()),
});
Dart ServiceAgreementRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/serviceagreement HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<ServiceAgreementRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<AgreementID>0</AgreementID>
<ProjectID>0</ProjectID>
<ServiceAgreement>
<ServiceAgreement>
<AgreementID>0</AgreementID>
<AgreementUID>00000000-0000-0000-0000-000000000000</AgreementUID>
<BranchId>00000000-0000-0000-0000-000000000000</BranchId>
<BranchName>String</BranchName>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CreatedBy>String</CreatedBy>
<EffectiveStartDate>0001-01-01T00:00:00</EffectiveStartDate>
<EndDate>0001-01-01T00:00:00</EndDate>
<ExternalRef>String</ExternalRef>
<MonthlyAmount>0</MonthlyAmount>
<Name>String</Name>
<NextVisitDate>0001-01-01T00:00:00</NextVisitDate>
<PerVisitAmount>0</PerVisitAmount>
<PreferredCrewID>0</PreferredCrewID>
<PreferredCrewName>String</PreferredCrewName>
<PricingShape>String</PricingShape>
<ProjectID>0</ProjectID>
<ProjectName>String</ProjectName>
<RecurrenceBy>String</RecurrenceBy>
<RecurrenceByValue>String</RecurrenceByValue>
<RecurrenceFrequency>String</RecurrenceFrequency>
<SeasonEndDay>0</SeasonEndDay>
<SeasonEndMonth>0</SeasonEndMonth>
<SeasonStartDay>0</SeasonStartDay>
<SeasonStartMonth>0</SeasonStartMonth>
<SkipPolicy>String</SkipPolicy>
<Status>String</Status>
<TenantId>00000000-0000-0000-0000-000000000000</TenantId>
<UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
<UpdatedBy>String</UpdatedBy>
<VisitsThisPeriod>0</VisitsThisPeriod>
</ServiceAgreement>
</ServiceAgreement>
</ServiceAgreementRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<ServiceAgreementResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
<ServiceAgreement>
<ServiceAgreement>
<AgreementID>0</AgreementID>
<AgreementUID>00000000-0000-0000-0000-000000000000</AgreementUID>
<BranchId>00000000-0000-0000-0000-000000000000</BranchId>
<BranchName>String</BranchName>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CreatedBy>String</CreatedBy>
<EffectiveStartDate>0001-01-01T00:00:00</EffectiveStartDate>
<EndDate>0001-01-01T00:00:00</EndDate>
<ExternalRef>String</ExternalRef>
<MonthlyAmount>0</MonthlyAmount>
<Name>String</Name>
<NextVisitDate>0001-01-01T00:00:00</NextVisitDate>
<PerVisitAmount>0</PerVisitAmount>
<PreferredCrewID>0</PreferredCrewID>
<PreferredCrewName>String</PreferredCrewName>
<PricingShape>String</PricingShape>
<ProjectID>0</ProjectID>
<ProjectName>String</ProjectName>
<RecurrenceBy>String</RecurrenceBy>
<RecurrenceByValue>String</RecurrenceByValue>
<RecurrenceFrequency>String</RecurrenceFrequency>
<SeasonEndDay>0</SeasonEndDay>
<SeasonEndMonth>0</SeasonEndMonth>
<SeasonStartDay>0</SeasonStartDay>
<SeasonStartMonth>0</SeasonStartMonth>
<SkipPolicy>String</SkipPolicy>
<Status>String</Status>
<TenantId>00000000-0000-0000-0000-000000000000</TenantId>
<UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
<UpdatedBy>String</UpdatedBy>
<VisitsThisPeriod>0</VisitsThisPeriod>
</ServiceAgreement>
</ServiceAgreement>
</ServiceAgreementResponse>