POST | /bulksearches/create | Create a bulk search |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
// @DataContract
class Authentication implements IConvertible
{
/**
* The API User ID provided by us when you signed up to use our API
*/
// @DataMember
// @ApiMember(Description="The API User ID provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body")
String? apiUserId;
/**
* The API User Key provided by us when you signed up to use our API
*/
// @DataMember
// @ApiMember(Description="The API User Key provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body")
String? apiUserKey;
Authentication({this.apiUserId,this.apiUserKey});
Authentication.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
apiUserId = json['apiUserId'];
apiUserKey = json['apiUserKey'];
return this;
}
Map<String, dynamic> toJson() => {
'apiUserId': apiUserId,
'apiUserKey': apiUserKey
};
getTypeName() => "Authentication";
TypeContext? context = _ctx;
}
// @DataContract
class BaseRequest implements IBaseRequest, IConvertible
{
/**
* The authentication credentials
*/
// @DataMember
// @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body")
Authentication? authentication;
BaseRequest({this.authentication});
BaseRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
authentication = JsonConverters.fromJson(json['authentication'],'Authentication',context!);
return this;
}
Map<String, dynamic> toJson() => {
'authentication': JsonConverters.toJson(authentication,'Authentication',context!)
};
getTypeName() => "BaseRequest";
TypeContext? context = _ctx;
}
// @DataContract
class ResponseError implements IConvertible
{
// @DataMember(Order=1)
String? errorCode;
// @DataMember(Order=2)
String? fieldName;
// @DataMember(Order=3)
String? message;
// @DataMember(Order=4)
Map<String,String?>? meta;
ResponseError({this.errorCode,this.fieldName,this.message,this.meta});
ResponseError.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
errorCode = json['errorCode'];
fieldName = json['fieldName'];
message = json['message'];
meta = JsonConverters.toStringMap(json['meta']);
return this;
}
Map<String, dynamic> toJson() => {
'errorCode': errorCode,
'fieldName': fieldName,
'message': message,
'meta': meta
};
getTypeName() => "ResponseError";
TypeContext? context = _ctx;
}
class ArrayOfResponseError extends ListBase<ResponseError> implements IConvertible
{
final List<ResponseError> l = [];
set length(int newLength) { l.length = newLength; }
int get length => l.length;
ResponseError operator [](int index) => l[index];
void operator []=(int index, ResponseError value) { l[index] = value; }
ArrayOfResponseError();
ArrayOfResponseError.fromJson(Map<String, dynamic> json) : super();
fromMap(Map<String, dynamic> json) {
return this;
}
Map<String, dynamic> toJson() => {};
getTypeName() => "ArrayOfResponseError";
TypeContext? context = _ctx;
}
// @DataContract
class ResponseStatus implements IConvertible
{
// @DataMember(Order=1)
String? errorCode;
// @DataMember(Order=2)
String? message;
// @DataMember(Order=3)
String? stackTrace;
// @DataMember(Order=4)
ArrayOfResponseError? errors;
// @DataMember(Order=5)
Map<String,String?>? meta;
ResponseStatus({this.errorCode,this.message,this.stackTrace,this.errors,this.meta});
ResponseStatus.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
errorCode = json['errorCode'];
message = json['message'];
stackTrace = json['stackTrace'];
errors = JsonConverters.fromJson(json['errors'],'ArrayOfResponseError',context!);
meta = JsonConverters.toStringMap(json['meta']);
return this;
}
Map<String, dynamic> toJson() => {
'errorCode': errorCode,
'message': message,
'stackTrace': stackTrace,
'errors': JsonConverters.toJson(errors,'ArrayOfResponseError',context!),
'meta': meta
};
getTypeName() => "ResponseStatus";
TypeContext? context = _ctx;
}
class BaseResponse implements IBaseDataResponse, IHasResponseStatus, IConvertible
{
/**
* The status of the response
*/
// @ApiMember(Description="The status of the response")
ResponseStatus? responseStatus;
BaseResponse({this.responseStatus});
BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
};
getTypeName() => "BaseResponse";
TypeContext? context = _ctx;
}
class BulkSearchStatus implements IConvertible
{
int? bulkSearchId;
bool? success;
String? status;
int? total;
String? message;
int? processed;
bool? isPepSearch;
bool? isSanctionsSearch;
int? totalPep;
int? processedPep;
int? totalSanctions;
int? processedSanctions;
BulkSearchStatus({this.bulkSearchId,this.success,this.status,this.total,this.message,this.processed,this.isPepSearch,this.isSanctionsSearch,this.totalPep,this.processedPep,this.totalSanctions,this.processedSanctions});
BulkSearchStatus.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
bulkSearchId = json['bulkSearchId'];
success = json['success'];
status = json['status'];
total = json['total'];
message = json['message'];
processed = json['processed'];
isPepSearch = json['isPepSearch'];
isSanctionsSearch = json['isSanctionsSearch'];
totalPep = json['totalPep'];
processedPep = json['processedPep'];
totalSanctions = json['totalSanctions'];
processedSanctions = json['processedSanctions'];
return this;
}
Map<String, dynamic> toJson() => {
'bulkSearchId': bulkSearchId,
'success': success,
'status': status,
'total': total,
'message': message,
'processed': processed,
'isPepSearch': isPepSearch,
'isSanctionsSearch': isSanctionsSearch,
'totalPep': totalPep,
'processedPep': processedPep,
'totalSanctions': totalSanctions,
'processedSanctions': processedSanctions
};
getTypeName() => "BulkSearchStatus";
TypeContext? context = _ctx;
}
class AddBulkSearchData extends BaseResponse implements IConvertible
{
BulkSearchStatus? bulkSearchStatus;
AddBulkSearchData({this.bulkSearchStatus});
AddBulkSearchData.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
bulkSearchStatus = JsonConverters.fromJson(json['bulkSearchStatus'],'BulkSearchStatus',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'bulkSearchStatus': JsonConverters.toJson(bulkSearchStatus,'BulkSearchStatus',context!)
});
getTypeName() => "AddBulkSearchData";
TypeContext? context = _ctx;
}
// @DataContract
class AddBulkSearchResponse implements IConvertible
{
// @DataMember
AddBulkSearchData? data;
AddBulkSearchResponse({this.data});
AddBulkSearchResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
data = JsonConverters.fromJson(json['data'],'AddBulkSearchData',context!);
return this;
}
Map<String, dynamic> toJson() => {
'data': JsonConverters.toJson(data,'AddBulkSearchData',context!)
};
getTypeName() => "AddBulkSearchResponse";
TypeContext? context = _ctx;
}
class ArrayOfLists extends ListBase<String> implements IConvertible
{
final List<String> l = [];
set length(int newLength) { l.length = newLength; }
int get length => l.length;
String operator [](int index) => l[index];
void operator []=(int index, String value) { l[index] = value; }
ArrayOfLists();
ArrayOfLists.fromJson(Map<String, dynamic> json) : super();
fromMap(Map<String, dynamic> json) {
return this;
}
Map<String, dynamic> toJson() => {};
getTypeName() => "ArrayOfLists";
TypeContext? context = _ctx;
}
class AddBulkSearchRequest implements IConvertible
{
bool? isSanctionsSearch;
bool? isPepSearch;
String? type;
ArrayOfLists? selectedLists;
AddBulkSearchRequest({this.isSanctionsSearch,this.isPepSearch,this.type,this.selectedLists});
AddBulkSearchRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
isSanctionsSearch = json['isSanctionsSearch'];
isPepSearch = json['isPepSearch'];
type = json['type'];
selectedLists = JsonConverters.fromJson(json['selectedLists'],'ArrayOfLists',context!);
return this;
}
Map<String, dynamic> toJson() => {
'isSanctionsSearch': isSanctionsSearch,
'isPepSearch': isPepSearch,
'type': type,
'selectedLists': JsonConverters.toJson(selectedLists,'ArrayOfLists',context!)
};
getTypeName() => "AddBulkSearchRequest";
TypeContext? context = _ctx;
}
// @DataContract
class AddBulkSearch extends BaseRequest implements IConvertible
{
// @DataMember
AddBulkSearchRequest? request;
AddBulkSearch({this.request});
AddBulkSearch.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
request = JsonConverters.fromJson(json['request'],'AddBulkSearchRequest',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'request': JsonConverters.toJson(request,'AddBulkSearchRequest',context!)
});
getTypeName() => "AddBulkSearch";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.sanctionssearch.com', types: <String, TypeInfo> {
'Authentication': TypeInfo(TypeOf.Class, create:() => Authentication()),
'BaseRequest': TypeInfo(TypeOf.Class, create:() => BaseRequest()),
'ArrayOfResponseError': TypeInfo(TypeOf.Class, create:() => ArrayOfResponseError()),
'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()),
'BulkSearchStatus': TypeInfo(TypeOf.Class, create:() => BulkSearchStatus()),
'AddBulkSearchData': TypeInfo(TypeOf.Class, create:() => AddBulkSearchData()),
'AddBulkSearchResponse': TypeInfo(TypeOf.Class, create:() => AddBulkSearchResponse()),
'ArrayOfLists': TypeInfo(TypeOf.Class, create:() => ArrayOfLists()),
'AddBulkSearchRequest': TypeInfo(TypeOf.Class, create:() => AddBulkSearchRequest()),
'AddBulkSearch': TypeInfo(TypeOf.Class, create:() => AddBulkSearch()),
});
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 /bulksearches/create HTTP/1.1
Host: api.sanctionssearch.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<AddBulkSearch xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<Authentication>
<ApiUserId>String</ApiUserId>
<ApiUserKey>String</ApiUserKey>
</Authentication>
<Request>
<IsPepSearch>false</IsPepSearch>
<IsSanctionsSearch>false</IsSanctionsSearch>
<SelectedLists>
<ListId>String</ListId>
</SelectedLists>
<Type>String</Type>
</Request>
</AddBulkSearch>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <AddBulkSearchResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types"> <Data> <ResponseStatus> <ErrorCode>String</ErrorCode> <Message>String</Message> <StackTrace>String</StackTrace> <Errors> <ResponseError> <ErrorCode>String</ErrorCode> <FieldName>String</FieldName> <Message>String</Message> <Meta xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d6p1:KeyValueOfstringstring> <d6p1:Key>String</d6p1:Key> <d6p1:Value>String</d6p1:Value> </d6p1:KeyValueOfstringstring> </Meta> </ResponseError> </Errors> <Meta xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d4p1:KeyValueOfstringstring> <d4p1:Key>String</d4p1:Key> <d4p1:Value>String</d4p1:Value> </d4p1:KeyValueOfstringstring> </Meta> </ResponseStatus> <BulkSearchStatus> <BulkSearchId>0</BulkSearchId> <IsPepSearch>false</IsPepSearch> <IsSanctionsSearch>false</IsSanctionsSearch> <Message>String</Message> <Processed>0</Processed> <ProcessedPep>0</ProcessedPep> <ProcessedSanctions>0</ProcessedSanctions> <Status>String</Status> <Success>false</Success> <Total>0</Total> <TotalPep>0</TotalPep> <TotalSanctions>0</TotalSanctions> </BulkSearchStatus> </Data> </AddBulkSearchResponse>