/* Options: Date: 2025-12-16 10:15:20 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.sanctionssearch.com/v2 //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: RegisterAccountTemplate.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } // @DataContract export class Authentication { /** @description The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User) */ // @DataMember // @ApiMember(Description="The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User)", IsRequired=true, ParameterType="header, body") public apiUserId: string; /** @description The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key) */ // @DataMember // @ApiMember(Description="The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key)", IsRequired=true, ParameterType="header, body") public apiUserKey: string; /** @description The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id). */ // @DataMember // @ApiMember(Description="The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id).", ParameterType="header, body") public userId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class BaseRequest implements IBaseRequest { /** @description The authentication credentials */ // @DataMember // @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body") public authentication: Authentication; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface IBaseRequest { authentication: Authentication; } export class RegisterAccountRequest { /** @description The desired login username for the account */ // @ApiMember(Description="The desired login username for the account", IsRequired=true) public username: string; /** @description The password for account login */ // @ApiMember(Description="The password for account login", IsRequired=true) public password: string; /** @description The contact email address for the account holder */ // @ApiMember(Description="The contact email address for the account holder", IsRequired=true) public email: string; /** @description The full legal name of the account holder */ // @ApiMember(Description="The full legal name of the account holder", IsRequired=true) public fullName: string; /** @description The registered name of the company associated with this account */ // @ApiMember(Description="The registered name of the company associated with this account", IsRequired=true) public companyName: string; /** @description The primary contact phone number of the company */ // @ApiMember(Description="The primary contact phone number of the company", IsRequired=true) public companyPhone: string; /** @description The first line of the company’s address (e.g., street name and number) */ // @ApiMember(Description="The first line of the company’s address (e.g., street name and number)", IsRequired=true) public address1: string; /** @description The second line of the company’s address (optional) */ // @ApiMember(Description="The second line of the company’s address (optional)") public address2: string; /** @description The third line of the company’s address (optional) */ // @ApiMember(Description="The third line of the company’s address (optional)") public address3: string; /** @description The city where the company is located (optional) */ // @ApiMember(Description="The city where the company is located (optional)") public city: string; /** @description The postal or ZIP code of the company’s address */ // @ApiMember(Description="The postal or ZIP code of the company’s address", IsRequired=true) public postcode: string; /** @description The country where the company is registered */ // @ApiMember(Description="The country where the company is registered", IsRequired=true) public country: string; /** @description The classification of the company (e.g., LLC, Corporation, Sole Proprietorship) */ // @ApiMember(Description="The classification of the company (e.g., LLC, Corporation, Sole Proprietorship)", IsRequired=true) public companyType: string; /** @description The industry sector the company operates in */ // @ApiMember(Description="The industry sector the company operates in", IsRequired=true) public companyIndustry: string; /** @description The trade body, network, or affiliation the company is a member of (if applicable) */ // @ApiMember(Description="The trade body, network, or affiliation the company is a member of (if applicable)") public companyNetwork: string; /** @description Indicates agreement to the terms and conditions (required) */ // @ApiMember(Description="Indicates agreement to the terms and conditions (required)", IsRequired=true) public agreeToTerms: boolean; /** @description Indicates agreement to the data protection statement (required) */ // @ApiMember(Description="Indicates agreement to the data protection statement (required)", IsRequired=true) public agreeToDataProtection: boolean; /** @description Indicates consent to be contacted (optional) */ // @ApiMember(Description="Indicates consent to be contacted (optional)") public agreeToContact: boolean; /** @description Indicates agreement to the privacy policy (required) */ // @ApiMember(Description="Indicates agreement to the privacy policy (required)", IsRequired=true) public agreeToPrivacy: boolean; /** @description An optional voucher code for discounts or promotions */ // @ApiMember(Description="An optional voucher code for discounts or promotions") public voucherCode: string; /** @description An optional code that grants access to certain features or subscriptions */ // @ApiMember(Description="An optional code that grants access to certain features or subscriptions") public accountActivationCode: string; /** @description The company's VAT registration number (if applicable) */ // @ApiMember(Description="The company's VAT registration number (if applicable)") public vatNumber: string; /** @description The country where the company is VAT-registered */ // @ApiMember(Description="The country where the company is VAT-registered") public vatCountry: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ResponseError { // @DataMember(Order=1) public errorCode: string; // @DataMember(Order=2) public fieldName: string; // @DataMember(Order=3) public message: string; // @DataMember(Order=4) public meta: { [index: string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ArrayOfResponseError extends Array { public constructor(init?: Partial) { super(); (Object as any).assign(this, init); } } // @DataContract export class ResponseStatus { // @DataMember(Order=1) public errorCode: string; // @DataMember(Order=2) public message: string; // @DataMember(Order=3) public stackTrace: string; // @DataMember(Order=4) public errors: ArrayOfResponseError; // @DataMember(Order=5) public meta: { [index: string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class BaseResponse implements IBaseDataResponse, IHasResponseStatus { /** @description The status of the response */ // @ApiMember(Description="The status of the response") public responseStatus: ResponseStatus; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ArrayOfCountry extends Array { public constructor(init?: Partial) { super(); (Object as any).assign(this, init); } } export class ArrayOfCompanyIndustry extends Array { public constructor(init?: Partial) { super(); (Object as any).assign(this, init); } } export class ArrayOfCompanyType extends Array { public constructor(init?: Partial) { super(); (Object as any).assign(this, init); } } export class ArrayOfVATCountry extends Array { public constructor(init?: Partial) { super(); (Object as any).assign(this, init); } } export class ReferenceData { /** @description A list of supported country values */ // @ApiMember(Description="A list of supported country values") public countries: ArrayOfCountry; /** @description A list of valid industry classifications for companies */ // @ApiMember(Description="A list of valid industry classifications for companies") public companyIndustries: ArrayOfCompanyIndustry; /** @description A list of accepted company types */ // @ApiMember(Description="A list of accepted company types") public companyTypes: ArrayOfCompanyType; /** @description A list of countries where VAT registration is recognized */ // @ApiMember(Description="A list of countries where VAT registration is recognized") public vatCountries: ArrayOfVATCountry; /** @description A URL linking to the terms and conditions document */ // @ApiMember(Description="A URL linking to the terms and conditions document") public termsAndConditionsLink: string; /** @description A URL linking to the privacy policy */ // @ApiMember(Description="A URL linking to the privacy policy") public privacyPolicyLink: string; /** @description The statement regarding contact preferences */ // @ApiMember(Description="The statement regarding contact preferences") public contactStatement: string; /** @description The statement outlining data protection policies */ // @ApiMember(Description="The statement outlining data protection policies") public dataProtectionStatement: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class RegisterAccountTemplateData extends BaseResponse { /** @description The request body of the RegisterAccount endpoint */ // @ApiMember(Description="The request body of the RegisterAccount endpoint") public request: RegisterAccountRequest; /** @description Reference data to fill out the RegisterAccount body */ // @ApiMember(Description="Reference data to fill out the RegisterAccount body") public referenceData: ReferenceData; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export interface IBaseDataResponse { responseStatus: ResponseStatus; } export interface IHasResponseStatus { responseStatus: ResponseStatus; } // @DataContract export class RegisterAccountTemplateResponse { /** @description The response data */ // @DataMember // @ApiMember(Description="The response data") public data: RegisterAccountTemplateData; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/account/register/template", "GET") // @DataContract export class RegisterAccountTemplate extends BaseRequest implements IReturn { public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'RegisterAccountTemplate'; } public getMethod() { return 'GET'; } public createResponse() { return new RegisterAccountTemplateResponse(); } }