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. |
---|
"use strict";
export class NewsletterCustomerInfo {
/** @param {{Id?:string,Firstname?:string,Lastname?:string,Email?:string,Phone?:string,FacebookUserName?:string,ImageUrl?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Id;
/** @type {string} */
Firstname;
/** @type {string} */
Lastname;
/** @type {string} */
Email;
/** @type {string} */
Phone;
/** @type {string} */
FacebookUserName;
/** @type {string} */
ImageUrl;
}
export class NewsletterCustomerQueryResponse {
/** @param {{Id?:string,Customer?:NewsletterCustomerInfo}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Id;
/** @type {NewsletterCustomerInfo} */
Customer;
}
export class NewsletterCustomerQuery {
/** @param {{CompanyId?:string,CustomerMinBookings?:number,CustomerMaxBookings?:number,BookedServiceIds?:number[],From?:string,To?:string,MaxRecords?:number,IncludeCustomerInformation?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description The company id, if empty will use the company id for the user you are logged in with. */
CompanyId;
/**
* @type {?number}
* @description Search for customer has done minimum number of bookings. */
CustomerMinBookings;
/**
* @type {?number}
* @description Search for customer has done maximum number of bookings. */
CustomerMaxBookings;
/**
* @type {number[]}
* @description Search for customer has booked any of the service in the list (List contain service id's). */
BookedServiceIds;
/**
* @type {?string}
* @description Search interval From datetime . */
From;
/**
* @type {?string}
* @description Search interval To datetime . */
To;
/**
* @type {?number}
* @description The max number of records you want to collect */
MaxRecords;
/**
* @type {boolean}
* @description If you want to include the full customer information in the response */
IncludeCustomerInformation;
}
JavaScript NewsletterCustomerQuery DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
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: text/csv
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Customer":{"Firstname":"String","Lastname":"String","Email":"String","Phone":"String","FacebookUserName":"String"}}