Mercedes.Agency.Orchestration.API

<back to all web services

CarConfiguratorRequest

CarConfigurator
Requires Authentication
The following routes are available for this service:
POST/v1/configuratorValidate and save a car configurator code for a back orderThis endpoint calls Agency API to validate and save a car configurator code for a back order. The code is validated and saved in the database and returns a response from a third party CCS which provides car configuration details. These get saved to open search and returned to the front-end
const std = @import("std");

pub const KeyInformation = struct {
    b_m7_n_s_t: ?[]const u8 = null,
    configuration_date: ?[]const u8 = null,
    model_year: ?[]const u8 = null,
    half_year: ?[]const u8 = null,
    type_class: ?[]const u8 = null,
    is_private_van: bool = false,
};

pub const EquipmentCache = struct {
    code: ?[]const u8 = null,
    description: ?[]const u8 = null,
    standard_flag: ?[]const u8 = null,
    price: f64 = 0,
    category: ?[]const u8 = null,
    importance: ?[]const u8 = null,
};

pub const OrderingOptions = struct {
    interior: ?[][]const u8 = null,
    exterior: ?[][]const u8 = null,
    options: ?[][]const u8 = null,
    wheel_options: []EquipmentCache = &.{},
    trim_options: []EquipmentCache = &.{},
    equipment_option_codes: []EquipmentCache = &.{},
    option_codes: []EquipmentCache = &.{},
};

pub const ResponseStatus = struct {
    error_code: ?[]const u8 = null,
    message: ?[]const u8 = null,
};

pub const CarConfiguratorResponse = struct {
    name: ?[]const u8 = null,
    key_information: ?KeyInformation = null,
    ordering_options: ?OrderingOptions = null,
    response_status: ?ResponseStatus = null,
    configurator_code: ?[]const u8 = null,
};

pub const CarConfiguratorRequest = struct {
    /// Configurator code
    // @ApiMember(Description="Configurator code", IsRequired=true)
    configurator_code: ?[]const u8 = null,
};

Zig CarConfiguratorRequest DTOs

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

HTTP + XML

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

POST /v1/configurator HTTP/1.1 
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CarConfiguratorRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.ServiceModel.BackOrders.CarConfigurator">
  <ConfiguratorCode>String</ConfiguratorCode>
</CarConfiguratorRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CarConfiguratorResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO.CarConfiguratorCodes">
  <ConfiguratorCode>String</ConfiguratorCode>
  <KeyInformation>
    <BM7NST>String</BM7NST>
    <ConfigurationDate>String</ConfigurationDate>
    <HalfYear>String</HalfYear>
    <IsPrivateVan>false</IsPrivateVan>
    <ModelYear>String</ModelYear>
    <TypeClass>String</TypeClass>
  </KeyInformation>
  <Name>String</Name>
  <OrderingOptions>
    <EquipmentOptionCodes xmlns:d3p1="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO">
      <d3p1:EquipmentCache>
        <d3p1:Category>String</d3p1:Category>
        <d3p1:Code>String</d3p1:Code>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:Importance>String</d3p1:Importance>
        <d3p1:Price>0</d3p1:Price>
        <d3p1:StandardFlag>String</d3p1:StandardFlag>
      </d3p1:EquipmentCache>
    </EquipmentOptionCodes>
    <Exterior xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Exterior>
    <Interior xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Interior>
    <OptionCodes xmlns:d3p1="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO">
      <d3p1:EquipmentCache>
        <d3p1:Category>String</d3p1:Category>
        <d3p1:Code>String</d3p1:Code>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:Importance>String</d3p1:Importance>
        <d3p1:Price>0</d3p1:Price>
        <d3p1:StandardFlag>String</d3p1:StandardFlag>
      </d3p1:EquipmentCache>
    </OptionCodes>
    <Options xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Options>
    <TrimOptions xmlns:d3p1="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO">
      <d3p1:EquipmentCache>
        <d3p1:Category>String</d3p1:Category>
        <d3p1:Code>String</d3p1:Code>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:Importance>String</d3p1:Importance>
        <d3p1:Price>0</d3p1:Price>
        <d3p1:StandardFlag>String</d3p1:StandardFlag>
      </d3p1:EquipmentCache>
    </TrimOptions>
    <WheelOptions xmlns:d3p1="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO">
      <d3p1:EquipmentCache>
        <d3p1:Category>String</d3p1:Category>
        <d3p1:Code>String</d3p1:Code>
        <d3p1:Description>String</d3p1:Description>
        <d3p1:Importance>String</d3p1:Importance>
        <d3p1:Price>0</d3p1:Price>
        <d3p1:StandardFlag>String</d3p1:StandardFlag>
      </d3p1:EquipmentCache>
    </WheelOptions>
  </OrderingOptions>
  <ResponseStatus>
    <ErrorCode>String</ErrorCode>
    <Message>String</Message>
  </ResponseStatus>
</CarConfiguratorResponse>