| Requires the role: | Admin | Requires the permission: | ReadData |
| POST | /Support/CustomerSearch |
|---|
import 'package:servicestack/servicestack.dart';
class SupportCustomerHit implements IConvertible
{
String? phone;
String? email;
String? name;
int? ticketCount;
int? ownerCardCount;
int? webshopOrderCount;
int? giftCardCount;
int? sharedLinkCount;
DateTime? lastActivityUtc;
List<String>? sellers;
String? matchedBy;
SupportCustomerHit({this.phone,this.email,this.name,this.ticketCount,this.ownerCardCount,this.webshopOrderCount,this.giftCardCount,this.sharedLinkCount,this.lastActivityUtc,this.sellers,this.matchedBy});
SupportCustomerHit.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
phone = json['phone'];
email = json['email'];
name = json['name'];
ticketCount = json['ticketCount'];
ownerCardCount = json['ownerCardCount'];
webshopOrderCount = json['webshopOrderCount'];
giftCardCount = json['giftCardCount'];
sharedLinkCount = json['sharedLinkCount'];
lastActivityUtc = JsonConverters.fromJson(json['lastActivityUtc'],'DateTime',context!);
sellers = JsonConverters.fromJson(json['sellers'],'List<String>',context!);
matchedBy = json['matchedBy'];
return this;
}
Map<String, dynamic> toJson() => {
'phone': phone,
'email': email,
'name': name,
'ticketCount': ticketCount,
'ownerCardCount': ownerCardCount,
'webshopOrderCount': webshopOrderCount,
'giftCardCount': giftCardCount,
'sharedLinkCount': sharedLinkCount,
'lastActivityUtc': JsonConverters.toJson(lastActivityUtc,'DateTime',context!),
'sellers': JsonConverters.toJson(sellers,'List<String>',context!),
'matchedBy': matchedBy
};
getTypeName() => "SupportCustomerHit";
TypeContext? context = _ctx;
}
class SupportCustomerSearchResult implements IConvertible
{
List<SupportCustomerHit>? hits;
String? termKind;
String? normalizedTerm;
List<String>? warnings;
int? statusCode;
String? message;
SupportCustomerSearchResult({this.hits,this.termKind,this.normalizedTerm,this.warnings,this.statusCode,this.message});
SupportCustomerSearchResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
hits = JsonConverters.fromJson(json['hits'],'List<SupportCustomerHit>',context!);
termKind = json['termKind'];
normalizedTerm = json['normalizedTerm'];
warnings = JsonConverters.fromJson(json['warnings'],'List<String>',context!);
statusCode = json['statusCode'];
message = json['message'];
return this;
}
Map<String, dynamic> toJson() => {
'hits': JsonConverters.toJson(hits,'List<SupportCustomerHit>',context!),
'termKind': termKind,
'normalizedTerm': normalizedTerm,
'warnings': JsonConverters.toJson(warnings,'List<String>',context!),
'statusCode': statusCode,
'message': message
};
getTypeName() => "SupportCustomerSearchResult";
TypeContext? context = _ctx;
}
class SupportCustomerSearchRequest implements IConvertible
{
String? term;
int? limit;
SupportCustomerSearchRequest({this.term,this.limit});
SupportCustomerSearchRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
term = json['term'];
limit = json['limit'];
return this;
}
Map<String, dynamic> toJson() => {
'term': term,
'limit': limit
};
getTypeName() => "SupportCustomerSearchRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
'SupportCustomerHit': TypeInfo(TypeOf.Class, create:() => SupportCustomerHit()),
'SupportCustomerSearchResult': TypeInfo(TypeOf.Class, create:() => SupportCustomerSearchResult()),
'List<SupportCustomerHit>': TypeInfo(TypeOf.Class, create:() => <SupportCustomerHit>[]),
'SupportCustomerSearchRequest': TypeInfo(TypeOf.Class, create:() => SupportCustomerSearchRequest()),
});
Dart SupportCustomerSearchRequest 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 /Support/CustomerSearch HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<SupportCustomerSearchRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<Limit>0</Limit>
<Term>String</Term>
</SupportCustomerSearchRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<SupportCustomerSearchResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<Hits>
<SupportCustomerHit>
<Email>String</Email>
<GiftCardCount>0</GiftCardCount>
<LastActivityUtc>0001-01-01T00:00:00</LastActivityUtc>
<MatchedBy>String</MatchedBy>
<Name>String</Name>
<OwnerCardCount>0</OwnerCardCount>
<Phone>String</Phone>
<Sellers xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:string>String</d4p1:string>
</Sellers>
<SharedLinkCount>0</SharedLinkCount>
<TicketCount>0</TicketCount>
<WebshopOrderCount>0</WebshopOrderCount>
</SupportCustomerHit>
</Hits>
<Message>String</Message>
<NormalizedTerm>String</NormalizedTerm>
<StatusCode>0</StatusCode>
<TermKind>String</TermKind>
<Warnings xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</Warnings>
</SupportCustomerSearchResult>