CDD Engine Web Service v2.14.0.0

<back to all web services

CompaniesHouseRequest

iNASA
Requires Authentication
The following routes are available for this service:
GET, POST/CompaniesHouse/{CompanyNumber}
GET, POST/CompaniesHouse
import 'package:servicestack/servicestack.dart';

class CompaniesHouseAddress implements IConvertible
{
    String? address1;
    String? address2;
    String? address3;
    String? city;
    String? postcode;

    CompaniesHouseAddress({this.address1,this.address2,this.address3,this.city,this.postcode});
    CompaniesHouseAddress.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        address1 = json['address1'];
        address2 = json['address2'];
        address3 = json['address3'];
        city = json['city'];
        postcode = json['postcode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'address1': address1,
        'address2': address2,
        'address3': address3,
        'city': city,
        'postcode': postcode
    };

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

class CompaniesHouseIncorporationDate implements IConvertible
{
    int? day;
    int? month;
    int? year;

    CompaniesHouseIncorporationDate({this.day,this.month,this.year});
    CompaniesHouseIncorporationDate.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        day = json['day'];
        month = json['month'];
        year = json['year'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'day': day,
        'month': month,
        'year': year
    };

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

class CompaniesHouseShareHolderData implements IConvertible
{
    String? title;
    String? firstName;
    String? middleNames;
    String? lastName;
    double? percentageOfVotingSharesOwned;

    CompaniesHouseShareHolderData({this.title,this.firstName,this.middleNames,this.lastName,this.percentageOfVotingSharesOwned});
    CompaniesHouseShareHolderData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        title = json['title'];
        firstName = json['firstName'];
        middleNames = json['middleNames'];
        lastName = json['lastName'];
        percentageOfVotingSharesOwned = JsonConverters.toDouble(json['percentageOfVotingSharesOwned']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'title': title,
        'firstName': firstName,
        'middleNames': middleNames,
        'lastName': lastName,
        'percentageOfVotingSharesOwned': percentageOfVotingSharesOwned
    };

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

class CompaniesHouseDirectorsData implements IConvertible
{
    String? title;
    String? firstName;
    String? middleNames;
    String? lastName;

    CompaniesHouseDirectorsData({this.title,this.firstName,this.middleNames,this.lastName});
    CompaniesHouseDirectorsData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        title = json['title'];
        firstName = json['firstName'];
        middleNames = json['middleNames'];
        lastName = json['lastName'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'title': title,
        'firstName': firstName,
        'middleNames': middleNames,
        'lastName': lastName
    };

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

class CompaniesHouseData implements IConvertible
{
    String? registeredName;
    CompaniesHouseAddress? address;
    CompaniesHouseIncorporationDate? dateOfIncorporation;
    List<CompaniesHouseShareHolderData>? shareHolders;
    List<CompaniesHouseDirectorsData>? directors;

    CompaniesHouseData({this.registeredName,this.address,this.dateOfIncorporation,this.shareHolders,this.directors});
    CompaniesHouseData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        registeredName = json['registeredName'];
        address = JsonConverters.fromJson(json['address'],'CompaniesHouseAddress',context!);
        dateOfIncorporation = JsonConverters.fromJson(json['dateOfIncorporation'],'CompaniesHouseIncorporationDate',context!);
        shareHolders = JsonConverters.fromJson(json['shareHolders'],'List<CompaniesHouseShareHolderData>',context!);
        directors = JsonConverters.fromJson(json['directors'],'List<CompaniesHouseDirectorsData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'registeredName': registeredName,
        'address': JsonConverters.toJson(address,'CompaniesHouseAddress',context!),
        'dateOfIncorporation': JsonConverters.toJson(dateOfIncorporation,'CompaniesHouseIncorporationDate',context!),
        'shareHolders': JsonConverters.toJson(shareHolders,'List<CompaniesHouseShareHolderData>',context!),
        'directors': JsonConverters.toJson(directors,'List<CompaniesHouseDirectorsData>',context!)
    };

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

class CompaniesHouseResponse implements IConvertible
{
    /**
    * Contains the companies house lookup result when successful.
    */
    CompaniesHouseData? Result;
    /**
    * Contains response status, details and errors.
    */
    ResponseStatus? ResponseStatus;

    CompaniesHouseResponse({this.Result,this.ResponseStatus});
    CompaniesHouseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'Result': JsonConverters.toJson(Result,'CompaniesHouseData',context!),
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

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

class CompaniesHouseRequest implements IConvertible
{
    /**
    * The registered company number.
    */
    // @Required()
    String? CompanyNumber;

    /**
    * The Csr of the application (if available).
    */
    String? Csr;

    CompaniesHouseRequest({this.CompanyNumber,this.Csr});
    CompaniesHouseRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'CompanyNumber': CompanyNumber,
        'Csr': Csr
    };

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

TypeContext _ctx = TypeContext(library: 'wpcdd_featuretest_ws.worldpay.com', types: <String, TypeInfo> {
    'CompaniesHouseAddress': TypeInfo(TypeOf.Class, create:() => CompaniesHouseAddress()),
    'CompaniesHouseIncorporationDate': TypeInfo(TypeOf.Class, create:() => CompaniesHouseIncorporationDate()),
    'CompaniesHouseShareHolderData': TypeInfo(TypeOf.Class, create:() => CompaniesHouseShareHolderData()),
    'CompaniesHouseDirectorsData': TypeInfo(TypeOf.Class, create:() => CompaniesHouseDirectorsData()),
    'CompaniesHouseData': TypeInfo(TypeOf.Class, create:() => CompaniesHouseData()),
    'List<CompaniesHouseShareHolderData>': TypeInfo(TypeOf.Class, create:() => <CompaniesHouseShareHolderData>[]),
    'List<CompaniesHouseDirectorsData>': TypeInfo(TypeOf.Class, create:() => <CompaniesHouseDirectorsData>[]),
    'CompaniesHouseResponse': TypeInfo(TypeOf.Class, create:() => CompaniesHouseResponse()),
    'CompaniesHouseRequest': TypeInfo(TypeOf.Class, create:() => CompaniesHouseRequest()),
});

Dart CompaniesHouseRequest 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 /CompaniesHouse/{CompanyNumber} HTTP/1.1 
Host: wpcdd-featuretest-ws.worldpay.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CompaniesHouseRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CDD_Engine_WS.dto.Requests">
  <CompanyNumber>String</CompanyNumber>
  <Csr>String</Csr>
</CompaniesHouseRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CompaniesHouseResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CDD_Engine_WS.dto.Responses">
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <Result xmlns:d2p1="http://schemas.datacontract.org/2004/07/CDD_Engine_DLL.DataObjects">
    <d2p1:address>
      <d2p1:address1>String</d2p1:address1>
      <d2p1:address2>String</d2p1:address2>
      <d2p1:address3>String</d2p1:address3>
      <d2p1:city>String</d2p1:city>
      <d2p1:postcode>String</d2p1:postcode>
    </d2p1:address>
    <d2p1:dateOfIncorporation>
      <d2p1:day>0</d2p1:day>
      <d2p1:month>0</d2p1:month>
      <d2p1:year>0</d2p1:year>
    </d2p1:dateOfIncorporation>
    <d2p1:directors>
      <d2p1:CompaniesHouseDirectorsData>
        <d2p1:firstName>String</d2p1:firstName>
        <d2p1:lastName>String</d2p1:lastName>
        <d2p1:middleNames>String</d2p1:middleNames>
        <d2p1:title>String</d2p1:title>
      </d2p1:CompaniesHouseDirectorsData>
    </d2p1:directors>
    <d2p1:registeredName>String</d2p1:registeredName>
    <d2p1:shareHolders>
      <d2p1:CompaniesHouseShareHolderData>
        <d2p1:firstName>String</d2p1:firstName>
        <d2p1:lastName>String</d2p1:lastName>
        <d2p1:middleNames>String</d2p1:middleNames>
        <d2p1:percentageOfVotingSharesOwned>0</d2p1:percentageOfVotingSharesOwned>
        <d2p1:title>String</d2p1:title>
      </d2p1:CompaniesHouseShareHolderData>
    </d2p1:shareHolders>
  </Result>
</CompaniesHouseResponse>