Requires any of the roles: | bookingsupplier-administrator-write, superadmin, bookingsupplier-administrator-read |
GET | /newsletter/customers | Get all customers that are valid for sending newsletters to. | Get all customers that are valid for sending newsletters to. |
---|
export class NewsletterCustomerInfo
{
public Id: string;
public Firstname: string;
public Lastname: string;
public Email: string;
public Phone: string;
public FacebookUserName: string;
public ImageUrl: string;
public constructor(init?: Partial<NewsletterCustomerInfo>) { (Object as any).assign(this, init); }
}
export class NewsletterCustomerQueryResponse
{
public Id: string;
public Customer: NewsletterCustomerInfo;
public constructor(init?: Partial<NewsletterCustomerQueryResponse>) { (Object as any).assign(this, init); }
}
// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
// @ValidateRequest(Validator="IsAuthenticated")
export class NewsletterCustomerQuery implements ICompany
{
/** @description The company id, if empty will use the company id for the user you are logged in with. */
// @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")
public CompanyId?: string;
/** @description Search for customer has done minimum number of bookings. */
// @ApiMember(Description="Search for customer has done minimum number of bookings.")
public CustomerMinBookings?: number;
/** @description Search for customer has done maximum number of bookings. */
// @ApiMember(Description="Search for customer has done maximum number of bookings.")
public CustomerMaxBookings?: number;
/** @description Search for customer has booked any of the service in the list (List contain service id's). */
// @ApiMember(Description="Search for customer has booked any of the service in the list (List contain service id's).")
public BookedServiceIds: number[];
/** @description Search interval From datetime . */
// @ApiMember(Description="Search interval From datetime .")
public From?: string;
/** @description Search interval To datetime . */
// @ApiMember(Description="Search interval To datetime .")
public To?: string;
/** @description The max number of records you want to collect */
// @ApiMember(Description="The max number of records you want to collect")
public MaxRecords?: number;
/** @description If you want to include the full customer information in the response */
// @ApiMember(Description="If you want to include the full customer information in the response")
public IncludeCustomerInformation: boolean;
public constructor(init?: Partial<NewsletterCustomerQuery>) { (Object as any).assign(this, init); }
}
TypeScript NewsletterCustomerQuery DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /newsletter/customers HTTP/1.1 Host: api.bokamera.se Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <NewsletterCustomerQueryResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos"> <Customer> <Email>String</Email> <FacebookUserName>String</FacebookUserName> <Firstname>String</Firstname> <Id>00000000-0000-0000-0000-000000000000</Id> <ImageUrl i:nil="true" /> <Lastname>String</Lastname> <Phone>String</Phone> </Customer> <Id>00000000-0000-0000-0000-000000000000</Id> </NewsletterCustomerQueryResponse>