| POST | /tasks/{brand}/importrequest | Upload request | Upload sell-outs and customers provided in a file |
|---|
import 'package:servicestack/servicestack.dart';
class ImportRequestResponse implements IConvertible
{
/**
* Unique Identifier of the Import Sell-Out and Customer request created
*/
// @ApiMember(Description="Unique Identifier of the Import Sell-Out and Customer request created", IsRequired=true)
String? asyncTaskId;
ImportRequestResponse({this.asyncTaskId});
ImportRequestResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
asyncTaskId = json['asyncTaskId'];
return this;
}
Map<String, dynamic> toJson() => {
'asyncTaskId': asyncTaskId
};
getTypeName() => "ImportRequestResponse";
TypeContext? context = _ctx;
}
class ImportRequest implements IConvertible
{
/**
* Brand Trigram, e.g. CAR, IWC
*/
// @ApiMember(Description="Brand Trigram, e.g. CAR, IWC", IsRequired=true)
String? brand;
/**
* Public key of the file in cloud server
*/
// @ApiMember(Description="Public key of the file in cloud server", IsRequired=true)
String? externalFileId;
/**
* Type of import e.g. 'SelloutAndCustomer', 'Sellout'
*/
// @ApiMember(Description="Type of import e.g. 'SelloutAndCustomer', 'Sellout'", IsRequired=true)
String? type;
/**
* B2 document reference to link the file with the Salesforce record
*/
// @ApiMember(Description="B2 document reference to link the file with the Salesforce record")
String? downloadRequestId;
ImportRequest({this.brand,this.externalFileId,this.type,this.downloadRequestId});
ImportRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
brand = json['brand'];
externalFileId = json['externalFileId'];
type = json['type'];
downloadRequestId = json['downloadRequestId'];
return this;
}
Map<String, dynamic> toJson() => {
'brand': brand,
'externalFileId': externalFileId,
'type': type,
'downloadRequestId': downloadRequestId
};
getTypeName() => "ImportRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: <String, TypeInfo> {
'ImportRequestResponse': TypeInfo(TypeOf.Class, create:() => ImportRequestResponse()),
'ImportRequest': TypeInfo(TypeOf.Class, create:() => ImportRequest()),
});
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 /tasks/{brand}/importrequest HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
brand: String,
externalFileId: String,
type: String,
downloadRequestId: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
asyncTaskId: 00000000000000000000000000000000
}