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: 'wp_cddws_test.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 .csv suffix or ?format=csv

HTTP + CSV

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: wp-cddws-test.worldpay.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"CompanyNumber":"String","Csr":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Result":{"registeredName":"String","address":{"address1":"String","address2":"String","address3":"String","city":"String","postcode":"String"},"dateOfIncorporation":{"day":0,"month":0,"year":0},"shareHolders":[{"title":"String","firstName":"String","middleNames":"String","lastName":"String","percentageOfVotingSharesOwned":0}],"directors":[{"title":"String","firstName":"String","middleNames":"String","lastName":"String"}]},"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}