Mercedes.Agency.Orchestration.API

<back to all web services

UpdateVehicleSwapRequest

VehicleSwap
Requires Authentication
The following routes are available for this service:
PUT/v1/VehicleSwapUpdates vehicle swap, order and back order recordsThis endpoint validates a swap vehicle and then calls an endpoint in the Agency API to update vehicle swap, order and back order and sends a message to OneAgent with the updated order vehicle and offers
import 'package:servicestack/servicestack.dart';

class VehicleError implements IConvertible
{
    String? Field;
    String? Message;

    VehicleError({this.Field,this.Message});
    VehicleError.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Field = json['Field'];
        Message = json['Message'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Field': Field,
        'Message': Message
    };

    getTypeName() => "VehicleError";
    TypeContext? context = _ctx;
}

class UpdateVehicleSwapResponse implements IConvertible
{
    List<VehicleError>? Errors;

    UpdateVehicleSwapResponse({this.Errors});
    UpdateVehicleSwapResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Errors = JsonConverters.fromJson(json['Errors'],'List<VehicleError>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Errors': JsonConverters.toJson(Errors,'List<VehicleError>',context!)
    };

    getTypeName() => "UpdateVehicleSwapResponse";
    TypeContext? context = _ctx;
}

class UpdateVehicleSwapRequest implements IPost, IConvertible
{
    String? VehicleSwapGuid;
    String? OrderGuid;
    String? BackOrderGuid;
    String? GssnId;
    String? Agent;
    String? ExistingVin;
    String? SwapVin;
    List<int>? PersonalisedItemOfferIds;

    UpdateVehicleSwapRequest({this.VehicleSwapGuid,this.OrderGuid,this.BackOrderGuid,this.GssnId,this.Agent,this.ExistingVin,this.SwapVin,this.PersonalisedItemOfferIds});
    UpdateVehicleSwapRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        VehicleSwapGuid = json['VehicleSwapGuid'];
        OrderGuid = json['OrderGuid'];
        BackOrderGuid = json['BackOrderGuid'];
        GssnId = json['GssnId'];
        Agent = json['Agent'];
        ExistingVin = json['ExistingVin'];
        SwapVin = json['SwapVin'];
        PersonalisedItemOfferIds = JsonConverters.fromJson(json['PersonalisedItemOfferIds'],'List<int>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'VehicleSwapGuid': VehicleSwapGuid,
        'OrderGuid': OrderGuid,
        'BackOrderGuid': BackOrderGuid,
        'GssnId': GssnId,
        'Agent': Agent,
        'ExistingVin': ExistingVin,
        'SwapVin': SwapVin,
        'PersonalisedItemOfferIds': JsonConverters.toJson(PersonalisedItemOfferIds,'List<int>',context!)
    };

    getTypeName() => "UpdateVehicleSwapRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'prod_api_agency_orch_mb_dhc.rapp_customers.co.uk', types: <String, TypeInfo> {
    'VehicleError': TypeInfo(TypeOf.Class, create:() => VehicleError()),
    'UpdateVehicleSwapResponse': TypeInfo(TypeOf.Class, create:() => UpdateVehicleSwapResponse()),
    'List<VehicleError>': TypeInfo(TypeOf.Class, create:() => <VehicleError>[]),
    'UpdateVehicleSwapRequest': TypeInfo(TypeOf.Class, create:() => UpdateVehicleSwapRequest()),
});

Dart UpdateVehicleSwapRequest 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.

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

<UpdateVehicleSwapRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.ServiceModel.VehicleSwap">
  <Agent>String</Agent>
  <BackOrderGuid>00000000-0000-0000-0000-000000000000</BackOrderGuid>
  <ExistingVin>String</ExistingVin>
  <GssnId>String</GssnId>
  <OrderGuid>00000000-0000-0000-0000-000000000000</OrderGuid>
  <PersonalisedItemOfferIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </PersonalisedItemOfferIds>
  <SwapVin>String</SwapVin>
  <VehicleSwapGuid>00000000-0000-0000-0000-000000000000</VehicleSwapGuid>
</UpdateVehicleSwapRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<UpdateVehicleSwapResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO">
  <Errors>
    <VehicleError>
      <Field>String</Field>
      <Message>String</Message>
    </VehicleError>
  </Errors>
</UpdateVehicleSwapResponse>