BokaMera.API.Host

<back to all web services

NewsletterCustomerQuery

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin, bookingsupplier-administrator-read
The following routes are available for this service:
GET/newsletter/customersGet all customers that are valid for sending newsletters to.Get all customers that are valid for sending newsletters to.
import java.math.*
import java.util.*
import net.servicestack.client.*


@ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
@ValidateRequest(Validator="IsAuthenticated")
open class NewsletterCustomerQuery : ICompany
{
    /**
    * 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.")
    var CompanyId:UUID? = null

    /**
    * Search for customer has done minimum number of bookings.
    */
    @ApiMember(Description="Search for customer has done minimum number of bookings.")
    var CustomerMinBookings:Int? = null

    /**
    * Search for customer has done maximum number of bookings.
    */
    @ApiMember(Description="Search for customer has done maximum number of bookings.")
    var CustomerMaxBookings:Int? = null

    /**
    * 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).")
    var BookedServiceIds:ArrayList<Int>? = null

    /**
    * Search interval From datetime .
    */
    @ApiMember(Description="Search interval From datetime .")
    var From:Date? = null

    /**
    * Search interval To datetime .
    */
    @ApiMember(Description="Search interval To datetime .")
    var To:Date? = null

    /**
    * The max number of records you want to collect
    */
    @ApiMember(Description="The max number of records you want to collect")
    var MaxRecords:Int? = null

    /**
    * 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")
    var IncludeCustomerInformation:Boolean? = null
}

open class NewsletterCustomerQueryResponse
{
    var Id:UUID? = null
    var Customer:NewsletterCustomerInfo? = null
}

open class NewsletterCustomerInfo
{
    var Id:UUID? = null
    var Firstname:String? = null
    var Lastname:String? = null
    var Email:String? = null
    var Phone:String? = null
    var FacebookUserName:String? = null
    var ImageUrl:Uri? = null
}

Kotlin NewsletterCustomerQuery DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

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/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Customer: 
	{
		Firstname: String,
		Lastname: String,
		Email: String,
		Phone: String,
		FacebookUserName: String
	}
}