BokaMera.API.Host

<back to all web services

GDPRInactiveCustomerQuery

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin, bookingsupplier-administrator-read
The following routes are available for this service:
GET/gdpr/customers/inactiveGet all customers that have been inactive due to the filtering.Get all customers that have been inactive due to the filtering you add in the request.
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
    @ValidateRequest(Validator="IsAuthenticated")
    public static class GDPRInactiveCustomerQuery implements 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.")
        public UUID CompanyId = null;

        /**
        * Inactive customers since the date. Inactive means they haven't done any bookings since that date.
        */
        @ApiMember(Description="Inactive customers since the date. Inactive means they haven't done any bookings since that date.", IsRequired=true)
        public Date InactiveSince = 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")
        public Boolean IncludeCustomerInformation = null;
        
        public UUID getCompanyId() { return CompanyId; }
        public GDPRInactiveCustomerQuery setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public Date getInactiveSince() { return InactiveSince; }
        public GDPRInactiveCustomerQuery setInactiveSince(Date value) { this.InactiveSince = value; return this; }
        public Boolean isIncludeCustomerInformation() { return IncludeCustomerInformation; }
        public GDPRInactiveCustomerQuery setIncludeCustomerInformation(Boolean value) { this.IncludeCustomerInformation = value; return this; }
    }

    public static class InactiveCustomerResponse
    {
        public UUID Id = null;
        public InactiveCustomerInfo Customer = null;
        
        public UUID getId() { return Id; }
        public InactiveCustomerResponse setId(UUID value) { this.Id = value; return this; }
        public InactiveCustomerInfo getCustomer() { return Customer; }
        public InactiveCustomerResponse setCustomer(InactiveCustomerInfo value) { this.Customer = value; return this; }
    }

    public static class InactiveCustomerInfo
    {
        public UUID Id = null;
        public String Firstname = null;
        public String Lastname = null;
        public String Email = null;
        public String Phone = null;
        public String FacebookUserName = null;
        public Uri ImageUrl = null;
        
        public UUID getId() { return Id; }
        public InactiveCustomerInfo setId(UUID value) { this.Id = value; return this; }
        public String getFirstname() { return Firstname; }
        public InactiveCustomerInfo setFirstname(String value) { this.Firstname = value; return this; }
        public String getLastname() { return Lastname; }
        public InactiveCustomerInfo setLastname(String value) { this.Lastname = value; return this; }
        public String getEmail() { return Email; }
        public InactiveCustomerInfo setEmail(String value) { this.Email = value; return this; }
        public String getPhone() { return Phone; }
        public InactiveCustomerInfo setPhone(String value) { this.Phone = value; return this; }
        public String getFacebookUserName() { return FacebookUserName; }
        public InactiveCustomerInfo setFacebookUserName(String value) { this.FacebookUserName = value; return this; }
        public Uri getImageUrl() { return ImageUrl; }
        public InactiveCustomerInfo setImageUrl(Uri value) { this.ImageUrl = value; return this; }
    }

}

Java GDPRInactiveCustomerQuery 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 /gdpr/customers/inactive HTTP/1.1 
Host: testapi.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
	}
}