| POST | /v1/BackOrder/ValidateBulkStatusAllocations | Validates back order references and statuses provided in a csv file for allocation to active back orders. | Reads a csv file and parses a list of back order references, MBUK assistance statuses and messages for validation before allocation to active back orders. |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Mercedes.Agency.Orchestration.API.ServiceModel.BackOrders;
using Mercedes.Agency.Orchestration.API.Business.Poco.BulkStatusAllocation;
using Mercedes.Agency.API.Shared.POCO.BulkStatusAllocation;
namespace Mercedes.Agency.API.Shared.POCO.BulkStatusAllocation
{
public partial class BackOrderStatusAllocation
{
public virtual int Row { get; set; }
public virtual string BackOrderReference { get; set; }
public virtual string Status { get; set; }
public virtual string Message { get; set; }
}
public partial class InvalidBackOrderStatusAllocation
: BackOrderStatusAllocation
{
public virtual string ValidationMessage { get; set; }
}
}
namespace Mercedes.Agency.Orchestration.API.Business.Poco.BulkStatusAllocation
{
public partial class BackOrderBulkStatusAllocation
{
public virtual int TotalBackOrders { get; set; }
public virtual int ValidBackOrders { get; set; }
public virtual int InvalidBackOrders { get; set; }
public virtual List<BackOrderStatusAllocation> Valid { get; set; } = [];
public virtual List<InvalidBackOrderStatusAllocation> Invalid { get; set; } = [];
}
public partial class BackOrderBulkStatusAllocationsResponse
{
public virtual string Message { get; set; }
public virtual BackOrderBulkStatusAllocation BackOrders { get; set; }
public virtual bool Successful { get; set; }
public virtual string Filename { get; set; }
}
}
namespace Mercedes.Agency.Orchestration.API.ServiceModel.BackOrders
{
public partial class ValidateBackOrderBulkStatusAllocationsRequest
{
}
}
C# ValidateBackOrderBulkStatusAllocationsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/BackOrder/ValidateBulkStatusAllocations HTTP/1.1
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"Message":"One or more errors in file","BackOrders":{"TotalBackOrders":2,"ValidBackOrders":1,"InvalidBackOrders":1,"Valid":[{"Row":0,"BackOrderReference":"String","Status":"String","Message":"String"}],"Invalid":[{"ValidationMessage":"String","Row":0,"BackOrderReference":"String","Status":"String","Message":"String"}]},"Successful":false,"Filename":"String"}