| POST,OPTIONS | /v1/integrations/{Provider}/{Action} |
|---|
import 'package:servicestack/servicestack.dart';
class ProviderView implements IConvertible
{
String? Key;
String? Name;
String? Category;
String? Blurb;
String? Mono;
String? AuthMode;
bool? Available;
String? Status;
String? Health;
String? StatusDetail;
String? AccountLabel;
String? Environment;
DateTime? LastActivityAt;
String? ManageRoute;
List<String>? Actions = [];
ProviderView({this.Key,this.Name,this.Category,this.Blurb,this.Mono,this.AuthMode,this.Available,this.Status,this.Health,this.StatusDetail,this.AccountLabel,this.Environment,this.LastActivityAt,this.ManageRoute,this.Actions});
ProviderView.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Key = json['Key'];
Name = json['Name'];
Category = json['Category'];
Blurb = json['Blurb'];
Mono = json['Mono'];
AuthMode = json['AuthMode'];
Available = json['Available'];
Status = json['Status'];
Health = json['Health'];
StatusDetail = json['StatusDetail'];
AccountLabel = json['AccountLabel'];
Environment = json['Environment'];
LastActivityAt = JsonConverters.fromJson(json['LastActivityAt'],'DateTime',context!);
ManageRoute = json['ManageRoute'];
Actions = JsonConverters.fromJson(json['Actions'],'List<String>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Key': Key,
'Name': Name,
'Category': Category,
'Blurb': Blurb,
'Mono': Mono,
'AuthMode': AuthMode,
'Available': Available,
'Status': Status,
'Health': Health,
'StatusDetail': StatusDetail,
'AccountLabel': AccountLabel,
'Environment': Environment,
'LastActivityAt': JsonConverters.toJson(LastActivityAt,'DateTime',context!),
'ManageRoute': ManageRoute,
'Actions': JsonConverters.toJson(Actions,'List<String>',context!)
};
getTypeName() => "ProviderView";
TypeContext? context = _ctx;
}
class IntegrationsActionResponse implements IConvertible
{
bool? Ok;
String? Message;
String? Url;
ProviderView? Provider;
ResponseStatus? ResponseStatus;
IntegrationsActionResponse({this.Ok,this.Message,this.Url,this.Provider,this.ResponseStatus});
IntegrationsActionResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Ok = json['Ok'];
Message = json['Message'];
Url = json['Url'];
Provider = JsonConverters.fromJson(json['Provider'],'ProviderView',context!);
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Ok': Ok,
'Message': Message,
'Url': Url,
'Provider': JsonConverters.toJson(Provider,'ProviderView',context!),
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "IntegrationsActionResponse";
TypeContext? context = _ctx;
}
class IntegrationsActionRequest implements IConvertible
{
String? Provider;
String? Action;
String? ApiKey;
String? FromDate;
String? ToDate;
IntegrationsActionRequest({this.Provider,this.Action,this.ApiKey,this.FromDate,this.ToDate});
IntegrationsActionRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Provider = json['Provider'];
Action = json['Action'];
ApiKey = json['ApiKey'];
FromDate = json['FromDate'];
ToDate = json['ToDate'];
return this;
}
Map<String, dynamic> toJson() => {
'Provider': Provider,
'Action': Action,
'ApiKey': ApiKey,
'FromDate': FromDate,
'ToDate': ToDate
};
getTypeName() => "IntegrationsActionRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'ProviderView': TypeInfo(TypeOf.Class, create:() => ProviderView()),
'IntegrationsActionResponse': TypeInfo(TypeOf.Class, create:() => IntegrationsActionResponse()),
'IntegrationsActionRequest': TypeInfo(TypeOf.Class, create:() => IntegrationsActionRequest()),
});
Dart IntegrationsActionRequest 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.
POST /v1/integrations/{Provider}/{Action} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Provider: String,
Action: String,
ApiKey: String,
FromDate: String,
ToDate: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Ok: False,
Message: String,
Url: String,
Provider:
{
Key: String,
Name: String,
Category: String,
Blurb: String,
Mono: String,
AuthMode: String,
Available: False,
Status: String,
Health: String,
StatusDetail: String,
AccountLabel: String,
Environment: String,
LastActivityAt: 0001-01-01,
ManageRoute: String,
Actions:
[
String
]
},
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}