Mercedes.Agency.Orchestration.API

<back to all web services

GetAddressRequest

Address
Requires Authentication
The following routes are available for this service:
GET/v1/address/{Postcode}Get Address by PostCode
GET/v1/address/{Postcode}/{HouseNameOrNumber}Get Address by PostCode and Premise
import 'package:servicestack/servicestack.dart';

class Address implements IConvertible
{
    String? Property;
    String? Street;
    String? Town;
    String? County;
    String? Locality;
    String? Postcode;

    Address({this.Property,this.Street,this.Town,this.County,this.Locality,this.Postcode});
    Address.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Property = json['Property'];
        Street = json['Street'];
        Town = json['Town'];
        County = json['County'];
        Locality = json['Locality'];
        Postcode = json['Postcode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Property': Property,
        'Street': Street,
        'Town': Town,
        'County': County,
        'Locality': Locality,
        'Postcode': Postcode
    };

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

class GetAddressResponse implements IConvertible
{
    List<Address>? Addresses = [];

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

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

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

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

class GetAddressRequest implements IGet, IConvertible
{
    String? Postcode;
    String? HouseNameOrNumber;

    GetAddressRequest({this.Postcode,this.HouseNameOrNumber});
    GetAddressRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'Postcode': Postcode,
        'HouseNameOrNumber': HouseNameOrNumber
    };

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

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

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

GET /v1/address/{Postcode} HTTP/1.1 
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetAddressResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.ServiceModel.Addresses">
  <Addresses xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO">
    <d2p1:Address>
      <d2p1:County>String</d2p1:County>
      <d2p1:Locality>String</d2p1:Locality>
      <d2p1:Postcode>String</d2p1:Postcode>
      <d2p1:Property>String</d2p1:Property>
      <d2p1:Street>String</d2p1:Street>
      <d2p1:Town>String</d2p1:Town>
    </d2p1:Address>
  </Addresses>
</GetAddressResponse>