Mercedes.Agency.Orchestration.API

<back to all web services

GetOrderCustomerRequest

Order
Requires Authentication
The following routes are available for this service:
GET/v1/order/customer/{CustomerId}Get Order by Customer
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.Clients.AgencyApi.Responses;
using Mercedes.Agency.API.Shared.POCO;

namespace Mercedes.Agency.API.Shared.POCO
{
    public partial class OnlineShowroomOrder
    {
        public virtual Guid Guid { get; set; }
        public virtual string Reference { get; set; }
        public virtual List<OnlineShowroomStatus> Status { get; set; } = [];
        public virtual OnlineShowroomVehicle Vehicle { get; set; }
        public virtual string ClosedDate { get; set; }
        public virtual string CustomerId { get; set; }
        public virtual string HandoverDate { get; set; }
        public virtual string ClosedReason { get; set; }
        public virtual string OrderDate { get; set; }
        public virtual List<PaymentDetail> PaymentLinks { get; set; } = [];
    }

    public partial class OnlineShowroomStatus
    {
        public virtual int Id { get; set; }
        public virtual string Description { get; set; }
        public virtual string Slug { get; set; }
        public virtual bool Current { get; set; }
        public virtual bool Completed { get; set; }
        public virtual List<OrderStatus> OrderStatuses { get; set; } = [];
    }

    public partial class OnlineShowroomVehicle
    {
        public virtual string Vin { get; set; }
        public virtual string VehicleClass { get; set; }
        public virtual string TransmissionType { get; set; }
        public virtual string FuelType { get; set; }
        public virtual string ImageUrl { get; set; }
        public virtual string Colour { get; set; }
        public virtual string Description { get; set; }
        public virtual string BodyStyle { get; set; }
        public virtual string UpholsteryType { get; set; }
        public virtual Retailer Retailer { get; set; }
        public virtual decimal OTR { get; set; }
        public virtual decimal ActualPrice { get; set; }
        public virtual decimal TotalOfferValue { get; set; }
        public virtual decimal NetPrice { get; set; }
        public virtual string VehicleType { get; set; }
        public virtual string OfferExpiryDate { get; set; }
    }

    public partial class Order
    {
        public virtual Guid Guid { get; set; }
        public virtual string Reference { get; set; }
        public virtual int Status { get; set; }
        public virtual string CustomerId { get; set; }
        public virtual string MulesoftReference { get; set; }
        public virtual string GasId { get; set; }
        public virtual string OrderDate { get; set; }
        public virtual string OfferSnapShot { get; set; }
    }

    public partial class OrderStatus
    {
        public virtual int Id { get; set; }
        public virtual string Description { get; set; }
    }

    public partial class PaymentDetail
    {
        public virtual string PaymentType { get; set; }
        public virtual string PaymentLink { get; set; }
    }

    public partial class Retailer
    {
        public virtual int Id { get; set; }
        public virtual string GssnId { get; set; }
        public virtual string Description { get; set; }
        public virtual string Street { get; set; }
        public virtual string City { get; set; }
        public virtual string Postcode { get; set; }
        public virtual string GoogleMapPostcode { get; set; }
        public virtual string Phone { get; set; }
        public virtual string Fax { get; set; }
        public virtual string Email { get; set; }
        public virtual string Website { get; set; }
        public virtual string RetailerGroupId { get; set; }
        public virtual string RetailerGroupName { get; set; }
        public virtual bool IsOnline { get; set; }
        public virtual bool IsNewCarRetailer { get; set; }
        public virtual bool IsUsedCarRetailer { get; set; }
        public virtual bool IsCentralRetailer { get; set; }
        public virtual bool ChatEnabled { get; set; }
        public virtual bool TradeInEnabled { get; set; }
        public virtual bool smart { get; set; }
        public virtual string DisplayPhoneNumberNew { get; set; }
        public virtual string DisplayPhoneNumberUsed { get; set; }
        public virtual decimal Latitude { get; set; }
        public virtual decimal Longitude { get; set; }
        public virtual string smartDescription { get; set; }
        public virtual string smartWebsite { get; set; }
        public virtual string smartPhone { get; set; }
        public virtual string LegacyId { get; set; }
        public virtual bool Agent { get; set; }
        public virtual int MarketAreaId { get; set; }
        public virtual string DigitalLoungeParentGssnId { get; set; }
        public virtual bool SendLeadsToDigitalLoungeParent { get; set; }
        public virtual RetailerOpeningTimes OpeningTimes { get; set; }
    }

    public partial class RetailerOpeningTime
    {
        public virtual string Day { get; set; }
        public virtual string OpenFrom { get; set; }
        public virtual string OpenTo { get; set; }
        public virtual string Special { get; set; }
    }

    public partial class RetailerOpeningTimes
    {
        public virtual List<RetailerOpeningTime> New { get; set; } = [];
        public virtual List<RetailerOpeningTime> Used { get; set; } = [];
    }

}

namespace Mercedes.Agency.Orchestration.API.Clients.AgencyApi.Responses
{
    public partial class GetOrderCustomerRequest
        : IGet
    {
        public virtual string CustomerId { get; set; }
    }

    public partial class GetOrderCustomerResponse
    {
        public virtual List<Order> Orders { get; set; } = [];
        public virtual List<OnlineShowroomOrder> Completed { get; set; } = [];
        public virtual List<OnlineShowroomOrder> Cancelled { get; set; } = [];
        public virtual List<OnlineShowroomOrder> InProgress { get; set; } = [];
        public virtual List<OnlineShowroomOrder> Archived { get; set; } = [];
    }

}

C# GetOrderCustomerRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/order/customer/{CustomerId} HTTP/1.1 
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Orders: 
	[
		{
			Guid: 00000000000000000000000000000000,
			Reference: String,
			Status: 0,
			CustomerId: String,
			MulesoftReference: String,
			GasId: String,
			OrderDate: String,
			OfferSnapShot: String
		}
	],
	Completed: 
	[
		{
			Guid: 00000000000000000000000000000000,
			Reference: String,
			Status: 
			[
				{
					Id: 0,
					Description: String,
					Slug: String,
					Current: False,
					Completed: False,
					OrderStatuses: 
					[
						{
							Id: 0,
							Description: String
						}
					]
				}
			],
			Vehicle: 
			{
				Vin: String,
				VehicleClass: String,
				TransmissionType: String,
				FuelType: String,
				ImageUrl: String,
				Colour: String,
				Description: String,
				BodyStyle: String,
				UpholsteryType: String,
				Retailer: 
				{
					Id: 0,
					GssnId: String,
					Description: String,
					Street: String,
					City: String,
					Postcode: String,
					GoogleMapPostcode: String,
					Phone: String,
					Fax: String,
					Email: String,
					Website: String,
					RetailerGroupId: String,
					RetailerGroupName: String,
					IsOnline: False,
					IsNewCarRetailer: False,
					IsUsedCarRetailer: False,
					IsCentralRetailer: False,
					ChatEnabled: False,
					TradeInEnabled: False,
					smart: False,
					DisplayPhoneNumberNew: String,
					DisplayPhoneNumberUsed: String,
					Latitude: 0,
					Longitude: 0,
					smartDescription: String,
					smartWebsite: String,
					smartPhone: String,
					LegacyId: String,
					Agent: False,
					MarketAreaId: 0,
					DigitalLoungeParentGssnId: String,
					SendLeadsToDigitalLoungeParent: False,
					OpeningTimes: 
					{
						New: 
						[
							{
								Day: String,
								OpenFrom: String,
								OpenTo: String,
								Special: String
							}
						],
						Used: 
						[
							{
								Day: String,
								OpenFrom: String,
								OpenTo: String,
								Special: String
							}
						]
					}
				},
				OTR: 0,
				ActualPrice: 0,
				TotalOfferValue: 0,
				NetPrice: 0,
				VehicleType: String,
				OfferExpiryDate: String
			},
			ClosedDate: String,
			CustomerId: String,
			HandoverDate: String,
			ClosedReason: String,
			OrderDate: String,
			PaymentLinks: 
			[
				{
					PaymentType: String,
					PaymentLink: String
				}
			]
		}
	],
	Cancelled: 
	[
		{
			Guid: 00000000000000000000000000000000,
			Reference: String,
			Status: 
			[
				{
					Id: 0,
					Description: String,
					Slug: String,
					Current: False,
					Completed: False,
					OrderStatuses: 
					[
						{
							Id: 0,
							Description: String
						}
					]
				}
			],
			Vehicle: 
			{
				Vin: String,
				VehicleClass: String,
				TransmissionType: String,
				FuelType: String,
				ImageUrl: String,
				Colour: String,
				Description: String,
				BodyStyle: String,
				UpholsteryType: String,
				Retailer: 
				{
					Id: 0,
					GssnId: String,
					Description: String,
					Street: String,
					City: String,
					Postcode: String,
					GoogleMapPostcode: String,
					Phone: String,
					Fax: String,
					Email: String,
					Website: String,
					RetailerGroupId: String,
					RetailerGroupName: String,
					IsOnline: False,
					IsNewCarRetailer: False,
					IsUsedCarRetailer: False,
					IsCentralRetailer: False,
					ChatEnabled: False,
					TradeInEnabled: False,
					smart: False,
					DisplayPhoneNumberNew: String,
					DisplayPhoneNumberUsed: String,
					Latitude: 0,
					Longitude: 0,
					smartDescription: String,
					smartWebsite: String,
					smartPhone: String,
					LegacyId: String,
					Agent: False,
					MarketAreaId: 0,
					DigitalLoungeParentGssnId: String,
					SendLeadsToDigitalLoungeParent: False,
					OpeningTimes: 
					{
						New: 
						[
							{
								Day: String,
								OpenFrom: String,
								OpenTo: String,
								Special: String
							}
						],
						Used: 
						[
							{
								Day: String,
								OpenFrom: String,
								OpenTo: String,
								Special: String
							}
						]
					}
				},
				OTR: 0,
				ActualPrice: 0,
				TotalOfferValue: 0,
				NetPrice: 0,
				VehicleType: String,
				OfferExpiryDate: String
			},
			ClosedDate: String,
			CustomerId: String,
			HandoverDate: String,
			ClosedReason: String,
			OrderDate: String,
			PaymentLinks: 
			[
				{
					PaymentType: String,
					PaymentLink: String
				}
			]
		}
	],
	InProgress: 
	[
		{
			Guid: 00000000000000000000000000000000,
			Reference: String,
			Status: 
			[
				{
					Id: 0,
					Description: String,
					Slug: String,
					Current: False,
					Completed: False,
					OrderStatuses: 
					[
						{
							Id: 0,
							Description: String
						}
					]
				}
			],
			Vehicle: 
			{
				Vin: String,
				VehicleClass: String,
				TransmissionType: String,
				FuelType: String,
				ImageUrl: String,
				Colour: String,
				Description: String,
				BodyStyle: String,
				UpholsteryType: String,
				Retailer: 
				{
					Id: 0,
					GssnId: String,
					Description: String,
					Street: String,
					City: String,
					Postcode: String,
					GoogleMapPostcode: String,
					Phone: String,
					Fax: String,
					Email: String,
					Website: String,
					RetailerGroupId: String,
					RetailerGroupName: String,
					IsOnline: False,
					IsNewCarRetailer: False,
					IsUsedCarRetailer: False,
					IsCentralRetailer: False,
					ChatEnabled: False,
					TradeInEnabled: False,
					smart: False,
					DisplayPhoneNumberNew: String,
					DisplayPhoneNumberUsed: String,
					Latitude: 0,
					Longitude: 0,
					smartDescription: String,
					smartWebsite: String,
					smartPhone: String,
					LegacyId: String,
					Agent: False,
					MarketAreaId: 0,
					DigitalLoungeParentGssnId: String,
					SendLeadsToDigitalLoungeParent: False,
					OpeningTimes: 
					{
						New: 
						[
							{
								Day: String,
								OpenFrom: String,
								OpenTo: String,
								Special: String
							}
						],
						Used: 
						[
							{
								Day: String,
								OpenFrom: String,
								OpenTo: String,
								Special: String
							}
						]
					}
				},
				OTR: 0,
				ActualPrice: 0,
				TotalOfferValue: 0,
				NetPrice: 0,
				VehicleType: String,
				OfferExpiryDate: String
			},
			ClosedDate: String,
			CustomerId: String,
			HandoverDate: String,
			ClosedReason: String,
			OrderDate: String,
			PaymentLinks: 
			[
				{
					PaymentType: String,
					PaymentLink: String
				}
			]
		}
	],
	Archived: 
	[
		{
			Guid: 00000000000000000000000000000000,
			Reference: String,
			Status: 
			[
				{
					Id: 0,
					Description: String,
					Slug: String,
					Current: False,
					Completed: False,
					OrderStatuses: 
					[
						{
							Id: 0,
							Description: String
						}
					]
				}
			],
			Vehicle: 
			{
				Vin: String,
				VehicleClass: String,
				TransmissionType: String,
				FuelType: String,
				ImageUrl: String,
				Colour: String,
				Description: String,
				BodyStyle: String,
				UpholsteryType: String,
				Retailer: 
				{
					Id: 0,
					GssnId: String,
					Description: String,
					Street: String,
					City: String,
					Postcode: String,
					GoogleMapPostcode: String,
					Phone: String,
					Fax: String,
					Email: String,
					Website: String,
					RetailerGroupId: String,
					RetailerGroupName: String,
					IsOnline: False,
					IsNewCarRetailer: False,
					IsUsedCarRetailer: False,
					IsCentralRetailer: False,
					ChatEnabled: False,
					TradeInEnabled: False,
					smart: False,
					DisplayPhoneNumberNew: String,
					DisplayPhoneNumberUsed: String,
					Latitude: 0,
					Longitude: 0,
					smartDescription: String,
					smartWebsite: String,
					smartPhone: String,
					LegacyId: String,
					Agent: False,
					MarketAreaId: 0,
					DigitalLoungeParentGssnId: String,
					SendLeadsToDigitalLoungeParent: False,
					OpeningTimes: 
					{
						New: 
						[
							{
								Day: String,
								OpenFrom: String,
								OpenTo: String,
								Special: String
							}
						],
						Used: 
						[
							{
								Day: String,
								OpenFrom: String,
								OpenTo: String,
								Special: String
							}
						]
					}
				},
				OTR: 0,
				ActualPrice: 0,
				TotalOfferValue: 0,
				NetPrice: 0,
				VehicleType: String,
				OfferExpiryDate: String
			},
			ClosedDate: String,
			CustomerId: String,
			HandoverDate: String,
			ClosedReason: String,
			OrderDate: String,
			PaymentLinks: 
			[
				{
					PaymentType: String,
					PaymentLink: String
				}
			]
		}
	]
}