/* Options: Date: 2024-05-18 09:26:37 Version: 6.50 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://www.clubready.com/api/current //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateProspectRequestV2.* //ExcludeTypes: //DefaultImports: */ export enum RestrictedResourceType { Store = 'Store', Chain = 'Chain', User = 'User', Undefined = 'Undefined', } export interface IRestrictedApiRequest extends IApiKeyEndpoint { RestrictedId?: number; RestrictedResourceType: RestrictedResourceType; } export interface IApiKeyEndpoint { ApiKey: string; } export class ApiDtoBase { public ApiKey: string; public StoreId?: number; public ChainId?: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CreateProspectRequestV2Dto extends ApiDtoBase { public FirstName: string; public LastName: string; public Address: string; public City: string; public State: string; public Zip: string; public Email: string; public Gender: string; public AddPackageId?: number; public ProspectTypeId?: number; public ReferralTypeId?: number; public SendEmail: boolean; public Phone: string; public WorkPhone: string; public DateOfBirth?: string; public CellPhone: string; public Coupon: string; public Note: string; public EmailTemplateId?: number; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } // @Route("/v2/{ApiKey}/club/{StoreId}/prospect", "POST") export class CreateProspectRequestV2 extends CreateProspectRequestV2Dto implements IRestrictedApiRequest { /** * Api Key - grants access to resources */ // @ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query") public ApiKey: string; /** * ClubReady Club ID (StoreID internally) */ // @ApiMember(DataType="integer", Description="ClubReady Club ID (StoreID internally)", IsRequired=true, Name="StoreId", ParameterType="query") public StoreId: number; /** * First Name */ // @ApiMember(DataType="string", Description="First Name", IsRequired=true, Name="FirstName", ParameterType="query") public FirstName: string; /** * Last Name */ // @ApiMember(DataType="string", Description="Last Name", IsRequired=true, Name="LastName", ParameterType="query") public LastName: string; /** * Email Address */ // @ApiMember(DataType="string", Description="Email Address", IsRequired=true, Name="Email", ParameterType="query") public Email: string; /** * Gender */ // @ApiMember(DataType="string", Description="Gender", Name="Gender", ParameterType="query") public Gender: string; /** * Address */ // @ApiMember(DataType="string", Description="Address", Name="Address", ParameterType="query") public Address: string; /** * City */ // @ApiMember(DataType="string", Description="City", Name="City", ParameterType="query") public City: string; // @ApiMember(DataType="string", Name="State", ParameterType="query") public State: string; // @ApiMember(DataType="string", Name="Zip", ParameterType="query") public Zip: string; public Phone: string; public WorkPhone: string; public DateOfBirth?: string; public CellPhone: string; /** * Specify a Package to apply to the new prospect */ // @ApiMember(DataType="integer", Description="Specify a Package to apply to the new prospect", Name="AddPackageId", ParameterType="query") public AddPackageId?: number; /** * Specify a specific Prospect Type for the new prospect */ // @ApiMember(DataType="integer", Description="Specify a specific Prospect Type for the new prospect", Name="ProspectTypeId", ParameterType="query") public ProspectTypeId?: number; /** * Specify a specific Referral Type for the new prospect */ // @ApiMember(DataType="integer", Description="Specify a specific Referral Type for the new prospect", Name="ReferralTypeId", ParameterType="query") public ReferralTypeId?: number; /** * Send a Welcome email to the new prospect */ // @ApiMember(DataType="boolean", Description="Send a Welcome email to the new prospect", IsRequired=true, Name="SendEmail", ParameterType="query") public SendEmail: boolean; /** * Only used if SendEmail = True */ // @ApiMember(DataType="integer", Description="Only used if SendEmail = True", Name="EmailTemplateId", ParameterType="query") public EmailTemplateId?: number; /** * */ // @ApiMember(DataType="string", Description="", Name="Coupon", ParameterType="query") public Coupon: string; /** * Add an internal note for the new prospect */ // @ApiMember(DataType="string", Description="Add an internal note for the new prospect", Name="Note", ParameterType="query") public Note: string; public RestrictedId?: number; public RestrictedResourceType: RestrictedResourceType; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'CreateProspectRequestV2'; } public getMethod() { return 'POST'; } public createResponse() {} }