Requires the role: | superadmin |
POST | /companies/{Id}/copy | Create new company | Copy a company information. |
---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
@ValidateRequest(Validator="IsAuthenticated")
@ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
public static class CopyCompany
{
/**
* Id for a specific company you want to copy.
*/
@ApiMember(Description="Id for a specific company you want to copy.", ParameterType="query")
public UUID Id = null;
/**
*
*/
@ApiMember(DataType="string", Description="", IsRequired=true)
public String Name = null;
/**
*
*/
@ApiMember(DataType="string", Description="", IsRequired=true)
public String OrganisationNumber = null;
/**
* What type of company. If it's used for personal use or as a company. 1 = Company use, 2 = Personal use
*/
@ApiMember(DataType="int", Description="What type of company. If it's used for personal use or as a company. 1 = Company use, 2 = Personal use", IsRequired=true)
public Integer TypeId = null;
/**
* What company owner. 1 = BokaMera (default)
*/
@ApiMember(DataType="int", Description="What company owner. 1 = BokaMera (default)", IsRequired=true)
public Integer CompanyOwnerId = null;
/**
* Include following services, if null all active services will be copied.
*/
@ApiMember(Description="Include following services, if null all active services will be copied.", ParameterType="query")
public ArrayList<Integer> Services = null;
/**
* Include following resource types, if null all active resource types will be copied.
*/
@ApiMember(Description="Include following resource types, if null all active resource types will be copied.", ParameterType="query")
public ArrayList<Integer> ResourceTypes = null;
/**
* Include following resources, if null all active resources will be copied.
*/
@ApiMember(Description="Include following resources, if null all active resources will be copied.", ParameterType="query")
public ArrayList<Integer> Resources = null;
/**
* Include following recurring schedules, if null all active recurring schedules will be copied.
*/
@ApiMember(Description="Include following recurring schedules, if null all active recurring schedules will be copied.", ParameterType="query")
public ArrayList<Integer> RecurringSchedules = null;
/**
* Include following date schedules, if null all active date schedules will be copied.
*/
@ApiMember(Description="Include following date schedules, if null all active date schedules will be copied.", ParameterType="query")
public ArrayList<Integer> DateSchedules = null;
/**
*
*/
@ApiMember(DataType="string", Description="", IsRequired=true)
public String OpeningHours = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String Details = null;
/**
*
*/
@ApiMember(DataType="string", Description="", IsRequired=true)
public Integer CategoryId = null;
/**
*
*/
@ApiMember(DataType="uri", Description="", IsRequired=true)
public Uri LogoType = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String Street1 = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String Street2 = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String ZipCode = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String City = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String CountryId = null;
/**
*
*/
@ApiMember(DataType="string", Description="", IsRequired=true)
public String Longitude = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String Latitude = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String Phone = null;
/**
*
*/
@ApiMember(DataType="string", Description="", IsRequired=true)
public String Email = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String Fax = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String Homepage = null;
/**
*
*/
@ApiMember(DataType="string", Description="", IsRequired=true)
public String SitePath = null;
/**
*
*/
@ApiMember(Description="", IsRequired=true)
public CreateCompanyCompanyUser CompanyUser = null;
public CreateCompanyBillingInformation BillingInformation = null;
/**
* Id of the license type
*/
@ApiMember(Description="Id of the license type", IsRequired=true)
public Integer LicenseTypeId = null;
/**
*
*/
@ApiMember(DataType="string", Description="")
public String DomainName = null;
public UUID getId() { return Id; }
public CopyCompany setId(UUID value) { this.Id = value; return this; }
public String getName() { return Name; }
public CopyCompany setName(String value) { this.Name = value; return this; }
public String getOrganisationNumber() { return OrganisationNumber; }
public CopyCompany setOrganisationNumber(String value) { this.OrganisationNumber = value; return this; }
public Integer getTypeId() { return TypeId; }
public CopyCompany setTypeId(Integer value) { this.TypeId = value; return this; }
public Integer getCompanyOwnerId() { return CompanyOwnerId; }
public CopyCompany setCompanyOwnerId(Integer value) { this.CompanyOwnerId = value; return this; }
public ArrayList<Integer> getServices() { return Services; }
public CopyCompany setServices(ArrayList<Integer> value) { this.Services = value; return this; }
public ArrayList<Integer> getResourceTypes() { return ResourceTypes; }
public CopyCompany setResourceTypes(ArrayList<Integer> value) { this.ResourceTypes = value; return this; }
public ArrayList<Integer> getResources() { return Resources; }
public CopyCompany setResources(ArrayList<Integer> value) { this.Resources = value; return this; }
public ArrayList<Integer> getRecurringSchedules() { return RecurringSchedules; }
public CopyCompany setRecurringSchedules(ArrayList<Integer> value) { this.RecurringSchedules = value; return this; }
public ArrayList<Integer> getDateSchedules() { return DateSchedules; }
public CopyCompany setDateSchedules(ArrayList<Integer> value) { this.DateSchedules = value; return this; }
public String getOpeningHours() { return OpeningHours; }
public CopyCompany setOpeningHours(String value) { this.OpeningHours = value; return this; }
public String getDetails() { return Details; }
public CopyCompany setDetails(String value) { this.Details = value; return this; }
public Integer getCategoryId() { return CategoryId; }
public CopyCompany setCategoryId(Integer value) { this.CategoryId = value; return this; }
public Uri getLogoType() { return LogoType; }
public CopyCompany setLogoType(Uri value) { this.LogoType = value; return this; }
public String getStreet1() { return Street1; }
public CopyCompany setStreet1(String value) { this.Street1 = value; return this; }
public String getStreet2() { return Street2; }
public CopyCompany setStreet2(String value) { this.Street2 = value; return this; }
public String getZipCode() { return ZipCode; }
public CopyCompany setZipCode(String value) { this.ZipCode = value; return this; }
public String getCity() { return City; }
public CopyCompany setCity(String value) { this.City = value; return this; }
public String getCountryId() { return CountryId; }
public CopyCompany setCountryId(String value) { this.CountryId = value; return this; }
public String getLongitude() { return Longitude; }
public CopyCompany setLongitude(String value) { this.Longitude = value; return this; }
public String getLatitude() { return Latitude; }
public CopyCompany setLatitude(String value) { this.Latitude = value; return this; }
public String getPhone() { return Phone; }
public CopyCompany setPhone(String value) { this.Phone = value; return this; }
public String getEmail() { return Email; }
public CopyCompany setEmail(String value) { this.Email = value; return this; }
public String getFax() { return Fax; }
public CopyCompany setFax(String value) { this.Fax = value; return this; }
public String getHomepage() { return Homepage; }
public CopyCompany setHomepage(String value) { this.Homepage = value; return this; }
public String getSitePath() { return SitePath; }
public CopyCompany setSitePath(String value) { this.SitePath = value; return this; }
public CreateCompanyCompanyUser getCompanyUser() { return CompanyUser; }
public CopyCompany setCompanyUser(CreateCompanyCompanyUser value) { this.CompanyUser = value; return this; }
public CreateCompanyBillingInformation getBillingInformation() { return BillingInformation; }
public CopyCompany setBillingInformation(CreateCompanyBillingInformation value) { this.BillingInformation = value; return this; }
public Integer getLicenseTypeId() { return LicenseTypeId; }
public CopyCompany setLicenseTypeId(Integer value) { this.LicenseTypeId = value; return this; }
public String getDomainName() { return DomainName; }
public CopyCompany setDomainName(String value) { this.DomainName = value; return this; }
}
public static class CreateCompanyCompanyUser
{
@ApiMember(IsRequired=true)
public String Firstname = null;
@ApiMember(IsRequired=true)
public String Lastname = null;
@ApiMember(IsRequired=true)
public String Phone = null;
@ApiMember(IsRequired=true)
public String Email = null;
@ApiMember()
public Integer WorkerId = null;
public String getFirstname() { return Firstname; }
public CreateCompanyCompanyUser setFirstname(String value) { this.Firstname = value; return this; }
public String getLastname() { return Lastname; }
public CreateCompanyCompanyUser setLastname(String value) { this.Lastname = value; return this; }
public String getPhone() { return Phone; }
public CreateCompanyCompanyUser setPhone(String value) { this.Phone = value; return this; }
public String getEmail() { return Email; }
public CreateCompanyCompanyUser setEmail(String value) { this.Email = value; return this; }
public Integer getWorkerId() { return WorkerId; }
public CreateCompanyCompanyUser setWorkerId(Integer value) { this.WorkerId = value; return this; }
}
public static class CreateCompanyBillingInformation
{
/**
* The prefered billing method.
*/
@ApiMember(Description="The prefered billing method.", IsRequired=true)
public Integer BillingMethodId = null;
/**
* The name that should be printed on the billing information, normally this would be your company name.
*/
@ApiMember(Description="The name that should be printed on the billing information, normally this would be your company name.")
public String Name = null;
/**
* If you want to add the attention to the billing address.
*/
@ApiMember(Description="If you want to add the attention to the billing address.")
public String Attention = null;
/**
* The street for the billing adress. This is required when having postal invoice as billing method.
*/
@ApiMember(Description="The street for the billing adress. This is required when having postal invoice as billing method.")
public String Street1 = null;
/**
* The street for the billing adress.
*/
@ApiMember(Description="The street for the billing adress.")
public String Street2 = null;
/**
* The zip code (postal code) for the billing adress. This is required when having postal invoice as billing method.
*/
@ApiMember(Description="The zip code (postal code) for the billing adress. This is required when having postal invoice as billing method.")
public String ZipCode = null;
/**
* The city for the billing adress. This is required when having postal invoice as billing method.
*/
@ApiMember(Description="The city for the billing adress. This is required when having postal invoice as billing method.")
public String City = null;
/**
* The country for the billing adress. This is required when having postal invoice as billing method.
*/
@ApiMember(Description="The country for the billing adress. This is required when having postal invoice as billing method.")
public String CountryId = null;
/**
* The billing email. This is required when having email invoice as billing method.
*/
@ApiMember(Description="The billing email. This is required when having email invoice as billing method.")
public String Email = null;
/**
* The billing payment terms in days. This is default 15 days.
*/
@ApiMember(Description="The billing payment terms in days. This is default 15 days.")
public Integer PaymentTermsDays = null;
/**
* The company vat registration number.
*/
@ApiMember(Description="The company vat registration number.")
public String VatRegistrationNumber = null;
public Integer getBillingMethodId() { return BillingMethodId; }
public CreateCompanyBillingInformation setBillingMethodId(Integer value) { this.BillingMethodId = value; return this; }
public String getName() { return Name; }
public CreateCompanyBillingInformation setName(String value) { this.Name = value; return this; }
public String getAttention() { return Attention; }
public CreateCompanyBillingInformation setAttention(String value) { this.Attention = value; return this; }
public String getStreet1() { return Street1; }
public CreateCompanyBillingInformation setStreet1(String value) { this.Street1 = value; return this; }
public String getStreet2() { return Street2; }
public CreateCompanyBillingInformation setStreet2(String value) { this.Street2 = value; return this; }
public String getZipCode() { return ZipCode; }
public CreateCompanyBillingInformation setZipCode(String value) { this.ZipCode = value; return this; }
public String getCity() { return City; }
public CreateCompanyBillingInformation setCity(String value) { this.City = value; return this; }
public String getCountryId() { return CountryId; }
public CreateCompanyBillingInformation setCountryId(String value) { this.CountryId = value; return this; }
public String getEmail() { return Email; }
public CreateCompanyBillingInformation setEmail(String value) { this.Email = value; return this; }
public Integer getPaymentTermsDays() { return PaymentTermsDays; }
public CreateCompanyBillingInformation setPaymentTermsDays(Integer value) { this.PaymentTermsDays = value; return this; }
public String getVatRegistrationNumber() { return VatRegistrationNumber; }
public CreateCompanyBillingInformation setVatRegistrationNumber(String value) { this.VatRegistrationNumber = value; return this; }
}
public static class CompanyQueryResponse
{
public UUID Id = null;
public String Name = null;
/**
* The organisation number will only be visible if your owner to the company
*/
@ApiMember(DataType="string", Description="The organisation number will only be visible if your owner to the company")
public String OrganisationNumber = null;
/**
* What type of company. If it's used for personal use or as a company.
*/
@ApiMember(DataType="int", Description="What type of company. If it's used for personal use or as a company.")
public Integer TypeId = null;
public String Details = null;
public Integer CategoryId = null;
public String Category = null;
public Uri LogoType = null;
public Uri CoverImage = null;
public String Street1 = null;
public String Street2 = null;
public String ZipCode = null;
public String City = null;
public String CountryId = null;
public String Longitude = null;
public String Latitude = null;
public Double Distance = null;
public String Phone = null;
public String Email = null;
public String Homepage = null;
public String SitePath = null;
public Boolean Active = null;
public CodeLockSystemType CodeLockSystem = null;
public Boolean IsFreeAccount = null;
/**
* Will show when the company was updated, note it will only be shown if your logged in as admin for the company.
*/
@ApiMember(DataType="datetime", Description="Will show when the company was updated, note it will only be shown if your logged in as admin for the company.")
public Date Updated = null;
/**
* Will show when the company was created, note it will only be shown if your logged in as admin for the company.
*/
@ApiMember(DataType="datetime", Description="Will show when the company was created, note it will only be shown if your logged in as admin for the company.")
public Date Created = null;
public Integer StatusId = null;
/**
* If the company is marked as favourite for the logged in user
*/
@ApiMember(DataType="boolean", Description="If the company is marked as favourite for the logged in user")
public Boolean IsFavorite = null;
public String BookingAgreements = null;
public CompanyBookingSettings BookingSettings = null;
public CompanySystemSettings SystemSettings = null;
public CompanyWidgetSettings WidgetSettings = null;
public HomepageSettingsResponse HomepageSettings = null;
public CompanyRatingSummary RatingSummary = null;
public ArrayList<RatingReviewResponse> Reviews = null;
public ArrayList<CustomFieldConfigData> CustomerCustomFields = null;
public ResponseStatus ResponseStatus = null;
public UUID getId() { return Id; }
public CompanyQueryResponse setId(UUID value) { this.Id = value; return this; }
public String getName() { return Name; }
public CompanyQueryResponse setName(String value) { this.Name = value; return this; }
public String getOrganisationNumber() { return OrganisationNumber; }
public CompanyQueryResponse setOrganisationNumber(String value) { this.OrganisationNumber = value; return this; }
public Integer getTypeId() { return TypeId; }
public CompanyQueryResponse setTypeId(Integer value) { this.TypeId = value; return this; }
public String getDetails() { return Details; }
public CompanyQueryResponse setDetails(String value) { this.Details = value; return this; }
public Integer getCategoryId() { return CategoryId; }
public CompanyQueryResponse setCategoryId(Integer value) { this.CategoryId = value; return this; }
public String getCategory() { return Category; }
public CompanyQueryResponse setCategory(String value) { this.Category = value; return this; }
public Uri getLogoType() { return LogoType; }
public CompanyQueryResponse setLogoType(Uri value) { this.LogoType = value; return this; }
public Uri getCoverImage() { return CoverImage; }
public CompanyQueryResponse setCoverImage(Uri value) { this.CoverImage = value; return this; }
public String getStreet1() { return Street1; }
public CompanyQueryResponse setStreet1(String value) { this.Street1 = value; return this; }
public String getStreet2() { return Street2; }
public CompanyQueryResponse setStreet2(String value) { this.Street2 = value; return this; }
public String getZipCode() { return ZipCode; }
public CompanyQueryResponse setZipCode(String value) { this.ZipCode = value; return this; }
public String getCity() { return City; }
public CompanyQueryResponse setCity(String value) { this.City = value; return this; }
public String getCountryId() { return CountryId; }
public CompanyQueryResponse setCountryId(String value) { this.CountryId = value; return this; }
public String getLongitude() { return Longitude; }
public CompanyQueryResponse setLongitude(String value) { this.Longitude = value; return this; }
public String getLatitude() { return Latitude; }
public CompanyQueryResponse setLatitude(String value) { this.Latitude = value; return this; }
public Double getDistance() { return Distance; }
public CompanyQueryResponse setDistance(Double value) { this.Distance = value; return this; }
public String getPhone() { return Phone; }
public CompanyQueryResponse setPhone(String value) { this.Phone = value; return this; }
public String getEmail() { return Email; }
public CompanyQueryResponse setEmail(String value) { this.Email = value; return this; }
public String getHomepage() { return Homepage; }
public CompanyQueryResponse setHomepage(String value) { this.Homepage = value; return this; }
public String getSitePath() { return SitePath; }
public CompanyQueryResponse setSitePath(String value) { this.SitePath = value; return this; }
public Boolean isActive() { return Active; }
public CompanyQueryResponse setActive(Boolean value) { this.Active = value; return this; }
public CodeLockSystemType getCodeLockSystem() { return CodeLockSystem; }
public CompanyQueryResponse setCodeLockSystem(CodeLockSystemType value) { this.CodeLockSystem = value; return this; }
public Boolean getIsFreeAccount() { return IsFreeAccount; }
public CompanyQueryResponse setIsFreeAccount(Boolean value) { this.IsFreeAccount = value; return this; }
public Date getUpdated() { return Updated; }
public CompanyQueryResponse setUpdated(Date value) { this.Updated = value; return this; }
public Date getCreated() { return Created; }
public CompanyQueryResponse setCreated(Date value) { this.Created = value; return this; }
public Integer getStatusId() { return StatusId; }
public CompanyQueryResponse setStatusId(Integer value) { this.StatusId = value; return this; }
public Boolean getIsFavorite() { return IsFavorite; }
public CompanyQueryResponse setIsFavorite(Boolean value) { this.IsFavorite = value; return this; }
public String getBookingAgreements() { return BookingAgreements; }
public CompanyQueryResponse setBookingAgreements(String value) { this.BookingAgreements = value; return this; }
public CompanyBookingSettings getBookingSettings() { return BookingSettings; }
public CompanyQueryResponse setBookingSettings(CompanyBookingSettings value) { this.BookingSettings = value; return this; }
public CompanySystemSettings getSystemSettings() { return SystemSettings; }
public CompanyQueryResponse setSystemSettings(CompanySystemSettings value) { this.SystemSettings = value; return this; }
public CompanyWidgetSettings getWidgetSettings() { return WidgetSettings; }
public CompanyQueryResponse setWidgetSettings(CompanyWidgetSettings value) { this.WidgetSettings = value; return this; }
public HomepageSettingsResponse getHomepageSettings() { return HomepageSettings; }
public CompanyQueryResponse setHomepageSettings(HomepageSettingsResponse value) { this.HomepageSettings = value; return this; }
public CompanyRatingSummary getRatingSummary() { return RatingSummary; }
public CompanyQueryResponse setRatingSummary(CompanyRatingSummary value) { this.RatingSummary = value; return this; }
public ArrayList<RatingReviewResponse> getReviews() { return Reviews; }
public CompanyQueryResponse setReviews(ArrayList<RatingReviewResponse> value) { this.Reviews = value; return this; }
public ArrayList<CustomFieldConfigData> getCustomerCustomFields() { return CustomerCustomFields; }
public CompanyQueryResponse setCustomerCustomFields(ArrayList<CustomFieldConfigData> value) { this.CustomerCustomFields = value; return this; }
public ResponseStatus getResponseStatus() { return ResponseStatus; }
public CompanyQueryResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
}
public static enum CodeLockSystemType
{
Sample,
RcoM5,
AxemaVaka,
VanderbiltOmnis,
ParakeyParakey,
AmidoDax,
TelkeyTelkey,
TechSolutionsSiedle,
Accessy,
Zesec,
Enabla;
}
public static class CompanyBookingSettings
{
public Boolean EnableMobileApp = null;
public String BookingReceiptMessage = null;
public Boolean ShowFreeTimesLeft = null;
public Boolean EnableShowBookedTimes = null;
public String BookingAgreement = null;
/**
* The settings for how to display week number. 1 = ShowWeekNumberFromDate, 2 = ShowWeekNumberToDate, 3 = ShowWeekNumberFromToDate, 4 = DontShowWeekNumber
*/
@ApiMember(DataType="int", Description="The settings for how to display week number. 1 = ShowWeekNumberFromDate, 2 = ShowWeekNumberToDate, 3 = ShowWeekNumberFromToDate, 4 = DontShowWeekNumber ")
public Integer WeekNumberSetting = null;
public Boolean ShowBookedTimes = null;
/**
* The payment provider id. 1 = Payson Checkout 1.0, 2= Payson Checkout 2.0 ... To get the full payment provider for the company call GET /payment/settings
*/
@ApiMember(Description="The payment provider id. 1 = Payson Checkout 1.0, 2= Payson Checkout 2.0 ... To get the full payment provider for the company call GET /payment/settings")
public Integer PaymentProviderId = null;
/**
* If it's only allowed for existing customers to book
*/
@ApiMember(DataType="boolean", Description="If it's only allowed for existing customers to book")
public Boolean BookOnlyOnExistingCustomers = null;
/**
* If payment is enabled
*/
@ApiMember(DataType="boolean", Description="If payment is enabled")
public Boolean PaymentEnabled = null;
public Boolean isEnableMobileApp() { return EnableMobileApp; }
public CompanyBookingSettings setEnableMobileApp(Boolean value) { this.EnableMobileApp = value; return this; }
public String getBookingReceiptMessage() { return BookingReceiptMessage; }
public CompanyBookingSettings setBookingReceiptMessage(String value) { this.BookingReceiptMessage = value; return this; }
public Boolean isShowFreeTimesLeft() { return ShowFreeTimesLeft; }
public CompanyBookingSettings setShowFreeTimesLeft(Boolean value) { this.ShowFreeTimesLeft = value; return this; }
public Boolean isEnableShowBookedTimes() { return EnableShowBookedTimes; }
public CompanyBookingSettings setEnableShowBookedTimes(Boolean value) { this.EnableShowBookedTimes = value; return this; }
public String getBookingAgreement() { return BookingAgreement; }
public CompanyBookingSettings setBookingAgreement(String value) { this.BookingAgreement = value; return this; }
public Integer getWeekNumberSetting() { return WeekNumberSetting; }
public CompanyBookingSettings setWeekNumberSetting(Integer value) { this.WeekNumberSetting = value; return this; }
public Boolean isShowBookedTimes() { return ShowBookedTimes; }
public CompanyBookingSettings setShowBookedTimes(Boolean value) { this.ShowBookedTimes = value; return this; }
public Integer getPaymentProviderId() { return PaymentProviderId; }
public CompanyBookingSettings setPaymentProviderId(Integer value) { this.PaymentProviderId = value; return this; }
public Boolean isBookOnlyOnExistingCustomers() { return BookOnlyOnExistingCustomers; }
public CompanyBookingSettings setBookOnlyOnExistingCustomers(Boolean value) { this.BookOnlyOnExistingCustomers = value; return this; }
public Boolean isPaymentEnabled() { return PaymentEnabled; }
public CompanyBookingSettings setPaymentEnabled(Boolean value) { this.PaymentEnabled = value; return this; }
}
public static class CompanySystemSettings
{
/**
* If the booking is active or not
*/
@ApiMember(DataType="bool", Description="If the booking is active or not")
public Boolean Active = null;
/**
* If the booking is not active, what message to show to the customers
*/
@ApiMember(DataType="string", Description="If the booking is not active, what message to show to the customers")
public String InactiveMessage = null;
/**
* If the company should be visible in search results on hompage
*/
@ApiMember(DataType="bool", Description="If the company should be visible in search results on hompage")
public Boolean Searchable = null;
/**
* If you have a google analytics account and want to track your customers behaviors.
*/
@ApiMember(DataType="string", Description="If you have a google analytics account and want to track your customers behaviors.")
public String GATrackingId = null;
/**
* If you have a google Ads Conversion Id account and want to track your customers behaviors.
*/
@ApiMember(DataType="string", Description="If you have a google Ads Conversion Id account and want to track your customers behaviors.")
public String GoogleAdsConversionId = null;
/**
* If you have a LinkedIn account and want to track your customers behaviors.
*/
@ApiMember(DataType="string", Description="If you have a LinkedIn account and want to track your customers behaviors.")
public String LinkedinTagId = null;
/**
* If you have a Google Ads Conversion Label and want to track your customers behaviors.
*/
@ApiMember(DataType="string", Description="If you have a Google Ads Conversion Label and want to track your customers behaviors.")
public String GoogleAdsConversionLabel = null;
/**
* If you have a google tag manager account and want to track your customers behaviors.
*/
@ApiMember(DataType="string", Description="If you have a google tag manager account and want to track your customers behaviors.")
public String GTMTrackingId = null;
/**
* If you have a facebook account and want to track your customers behaviors.
*/
@ApiMember(DataType="string", Description="If you have a facebook account and want to track your customers behaviors.")
public String FacebookPixelId = null;
/**
* If you want your customers to be albe to change language on your homepage
*/
@ApiMember(DataType="bool", Description="If you want your customers to be albe to change language on your homepage")
public Boolean MultiLanguage = null;
/**
* If the company should be visible on the marketplace
*/
@ApiMember(DataType="bool", Description="If the company should be visible on the marketplace")
public Boolean ShowOnMarketplace = null;
/**
* If you want your own written text on your homepage to be translated using google analytics when a user changes language
*/
@ApiMember(DataType="bool", Description="If you want your own written text on your homepage to be translated using google analytics when a user changes language")
public Boolean EnableAPITranslation = null;
/**
* What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN
*/
@ApiMember(DataType="string", Description="What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN")
public String DefaultLanguage = null;
/**
* If you want to allow to send customer information in the tracking events to the external providers. Note you as a company are responsible for informing your customers and handling the data in terms of GDPR.
*/
@ApiMember(Description="If you want to allow to send customer information in the tracking events to the external providers. Note you as a company are responsible for informing your customers and handling the data in terms of GDPR. ")
public Boolean SendCustomerInformationToExternalProviders = null;
public Boolean isActive() { return Active; }
public CompanySystemSettings setActive(Boolean value) { this.Active = value; return this; }
public String getInactiveMessage() { return InactiveMessage; }
public CompanySystemSettings setInactiveMessage(String value) { this.InactiveMessage = value; return this; }
public Boolean isSearchable() { return Searchable; }
public CompanySystemSettings setSearchable(Boolean value) { this.Searchable = value; return this; }
public String getGaTrackingId() { return GATrackingId; }
public CompanySystemSettings setGaTrackingId(String value) { this.GATrackingId = value; return this; }
public String getGoogleAdsConversionId() { return GoogleAdsConversionId; }
public CompanySystemSettings setGoogleAdsConversionId(String value) { this.GoogleAdsConversionId = value; return this; }
public String getLinkedinTagId() { return LinkedinTagId; }
public CompanySystemSettings setLinkedinTagId(String value) { this.LinkedinTagId = value; return this; }
public String getGoogleAdsConversionLabel() { return GoogleAdsConversionLabel; }
public CompanySystemSettings setGoogleAdsConversionLabel(String value) { this.GoogleAdsConversionLabel = value; return this; }
public String getGtmTrackingId() { return GTMTrackingId; }
public CompanySystemSettings setGtmTrackingId(String value) { this.GTMTrackingId = value; return this; }
public String getFacebookPixelId() { return FacebookPixelId; }
public CompanySystemSettings setFacebookPixelId(String value) { this.FacebookPixelId = value; return this; }
public Boolean isMultiLanguage() { return MultiLanguage; }
public CompanySystemSettings setMultiLanguage(Boolean value) { this.MultiLanguage = value; return this; }
public Boolean isShowOnMarketplace() { return ShowOnMarketplace; }
public CompanySystemSettings setShowOnMarketplace(Boolean value) { this.ShowOnMarketplace = value; return this; }
public Boolean isEnableAPITranslation() { return EnableAPITranslation; }
public CompanySystemSettings setEnableAPITranslation(Boolean value) { this.EnableAPITranslation = value; return this; }
public String getDefaultLanguage() { return DefaultLanguage; }
public CompanySystemSettings setDefaultLanguage(String value) { this.DefaultLanguage = value; return this; }
public Boolean isSendCustomerInformationToExternalProviders() { return SendCustomerInformationToExternalProviders; }
public CompanySystemSettings setSendCustomerInformationToExternalProviders(Boolean value) { this.SendCustomerInformationToExternalProviders = value; return this; }
}
public static class CompanyWidgetSettings
{
/**
* The service layouts id.
*/
@ApiMember(Description="The service layouts id.")
public Integer ServiceLayoutId = null;
/**
* The time layouts id.
*/
@ApiMember(Description="The time layouts id.")
public Integer TimeLayoutId = null;
/**
* The booking layouts id.
*/
@ApiMember(Description="The booking layouts id.")
public Integer BookingLayoutId = null;
/**
* The primary color of the booking widget.
*/
@ApiMember(Description="The primary color of the booking widget.")
public String PrimaryColor = null;
/**
* If you should show the service image in the booking widget.
*/
@ApiMember(Description="If you should show the service image in the booking widget.")
public Boolean ShowServiceImage = null;
/**
* If you should show the rebate code field in the booking widget.
*/
@ApiMember(Description="If you should show the rebate code field in the booking widget.")
public Boolean ShowRebateCodeField = null;
/**
* If you should show the next available time in the booking widget.
*/
@ApiMember(Description="If you should show the next available time in the booking widget.")
public Boolean ShowNextAvailableTime = null;
/**
* If you should show the end time in the booking widget.
*/
@ApiMember(Description="If you should show the end time in the booking widget.")
public Boolean ShowEndTime = null;
/**
* What text to show on booked time slots. Default text is Booked
*/
@ApiMember(Description="What text to show on booked time slots. Default text is Booked")
public String BookedTimeSlotText = null;
/**
* If the widget should be displayed in dark theme
*/
@ApiMember(Description="If the widget should be displayed in dark theme")
public Boolean DarkTheme = null;
/**
* If you should show the subscribe to newsletter checkbox in the booking widget.
*/
@ApiMember(Description="If you should show the subscribe to newsletter checkbox in the booking widget.")
public Boolean ShowSubscribeToNewsletter = null;
public Integer getServiceLayoutId() { return ServiceLayoutId; }
public CompanyWidgetSettings setServiceLayoutId(Integer value) { this.ServiceLayoutId = value; return this; }
public Integer getTimeLayoutId() { return TimeLayoutId; }
public CompanyWidgetSettings setTimeLayoutId(Integer value) { this.TimeLayoutId = value; return this; }
public Integer getBookingLayoutId() { return BookingLayoutId; }
public CompanyWidgetSettings setBookingLayoutId(Integer value) { this.BookingLayoutId = value; return this; }
public String getPrimaryColor() { return PrimaryColor; }
public CompanyWidgetSettings setPrimaryColor(String value) { this.PrimaryColor = value; return this; }
public Boolean isShowServiceImage() { return ShowServiceImage; }
public CompanyWidgetSettings setShowServiceImage(Boolean value) { this.ShowServiceImage = value; return this; }
public Boolean isShowRebateCodeField() { return ShowRebateCodeField; }
public CompanyWidgetSettings setShowRebateCodeField(Boolean value) { this.ShowRebateCodeField = value; return this; }
public Boolean isShowNextAvailableTime() { return ShowNextAvailableTime; }
public CompanyWidgetSettings setShowNextAvailableTime(Boolean value) { this.ShowNextAvailableTime = value; return this; }
public Boolean isShowEndTime() { return ShowEndTime; }
public CompanyWidgetSettings setShowEndTime(Boolean value) { this.ShowEndTime = value; return this; }
public String getBookedTimeSlotText() { return BookedTimeSlotText; }
public CompanyWidgetSettings setBookedTimeSlotText(String value) { this.BookedTimeSlotText = value; return this; }
public Boolean isDarkTheme() { return DarkTheme; }
public CompanyWidgetSettings setDarkTheme(Boolean value) { this.DarkTheme = value; return this; }
public Boolean isShowSubscribeToNewsletter() { return ShowSubscribeToNewsletter; }
public CompanyWidgetSettings setShowSubscribeToNewsletter(Boolean value) { this.ShowSubscribeToNewsletter = value; return this; }
}
public static class HomepageSettingsResponse
{
/**
* The text for homepage heading
*/
@ApiMember(Description="The text for homepage heading")
public String HomepageHeading = null;
/**
* The text for homepage startpage heading
*/
@ApiMember(Description="The text for homepage startpage heading")
public String WelcomePageHeading = null;
/**
* The text for homepage startpage body
*/
@ApiMember(Description="The text for homepage startpage body")
public String WelcomePageBody = null;
/**
* The text for homepage about us page heading
*/
@ApiMember(Description="The text for homepage about us page heading")
public String AboutUsPageHeading = null;
/**
* The text for homepage about us page body
*/
@ApiMember(Description="The text for homepage about us page body")
public String AboutUsPageBody = null;
/**
* The startpage image url
*/
@ApiMember(Description="The startpage image url")
public Uri ImageUrl = null;
/**
* The cover image url
*/
@ApiMember(Description="The cover image url")
public Uri CoverImage = null;
/**
* Show rating on the page
*/
@ApiMember(Description="Show rating on the page")
public Boolean ShowRating = null;
/**
* The template for the homepage
*/
@ApiMember(Description="The template for the homepage")
public Integer HomePageTemplateId = null;
/**
* The hero section style for the homepage
*/
@ApiMember(Description="The hero section style for the homepage")
public Integer HeroSectionStyleId = null;
/**
* Enable the BokaMera Homepage
*/
@ApiMember(Description="Enable the BokaMera Homepage")
public Boolean EnableHomepage = null;
public String getHomepageHeading() { return HomepageHeading; }
public HomepageSettingsResponse setHomepageHeading(String value) { this.HomepageHeading = value; return this; }
public String getWelcomePageHeading() { return WelcomePageHeading; }
public HomepageSettingsResponse setWelcomePageHeading(String value) { this.WelcomePageHeading = value; return this; }
public String getWelcomePageBody() { return WelcomePageBody; }
public HomepageSettingsResponse setWelcomePageBody(String value) { this.WelcomePageBody = value; return this; }
public String getAboutUsPageHeading() { return AboutUsPageHeading; }
public HomepageSettingsResponse setAboutUsPageHeading(String value) { this.AboutUsPageHeading = value; return this; }
public String getAboutUsPageBody() { return AboutUsPageBody; }
public HomepageSettingsResponse setAboutUsPageBody(String value) { this.AboutUsPageBody = value; return this; }
public Uri getImageUrl() { return ImageUrl; }
public HomepageSettingsResponse setImageUrl(Uri value) { this.ImageUrl = value; return this; }
public Uri getCoverImage() { return CoverImage; }
public HomepageSettingsResponse setCoverImage(Uri value) { this.CoverImage = value; return this; }
public Boolean isShowRating() { return ShowRating; }
public HomepageSettingsResponse setShowRating(Boolean value) { this.ShowRating = value; return this; }
public Integer getHomePageTemplateId() { return HomePageTemplateId; }
public HomepageSettingsResponse setHomePageTemplateId(Integer value) { this.HomePageTemplateId = value; return this; }
public Integer getHeroSectionStyleId() { return HeroSectionStyleId; }
public HomepageSettingsResponse setHeroSectionStyleId(Integer value) { this.HeroSectionStyleId = value; return this; }
public Boolean isEnableHomepage() { return EnableHomepage; }
public HomepageSettingsResponse setEnableHomepage(Boolean value) { this.EnableHomepage = value; return this; }
}
public static class CompanyRatingSummary
{
/**
* The average rating score
*/
@ApiMember(Description="The average rating score")
public Double AverageScore = null;
/**
* The number of ratings of score 1
*/
@ApiMember(Description="The number of ratings of score 1")
public Integer RatingScore1Count = null;
/**
* The number of ratings of score 2
*/
@ApiMember(Description="The number of ratings of score 2")
public Integer RatingScore2Count = null;
/**
* The number of ratings of score 3
*/
@ApiMember(Description="The number of ratings of score 3")
public Integer RatingScore3Count = null;
/**
* The number of ratings of score 4
*/
@ApiMember(Description="The number of ratings of score 4")
public Integer RaingScore4Count = null;
/**
* The number of ratings of score 5
*/
@ApiMember(Description="The number of ratings of score 5")
public Integer RatingScore5Count = null;
/**
* The number of ratings
*/
@ApiMember(Description="The number of ratings")
public Integer Count = null;
public Double getAverageScore() { return AverageScore; }
public CompanyRatingSummary setAverageScore(Double value) { this.AverageScore = value; return this; }
public Integer getRatingScore1Count() { return RatingScore1Count; }
public CompanyRatingSummary setRatingScore1Count(Integer value) { this.RatingScore1Count = value; return this; }
public Integer getRatingScore2Count() { return RatingScore2Count; }
public CompanyRatingSummary setRatingScore2Count(Integer value) { this.RatingScore2Count = value; return this; }
public Integer getRatingScore3Count() { return RatingScore3Count; }
public CompanyRatingSummary setRatingScore3Count(Integer value) { this.RatingScore3Count = value; return this; }
public Integer getRaingScore4Count() { return RaingScore4Count; }
public CompanyRatingSummary setRaingScore4Count(Integer value) { this.RaingScore4Count = value; return this; }
public Integer getRatingScore5Count() { return RatingScore5Count; }
public CompanyRatingSummary setRatingScore5Count(Integer value) { this.RatingScore5Count = value; return this; }
public Integer getCount() { return Count; }
public CompanyRatingSummary setCount(Integer value) { this.Count = value; return this; }
}
public static class RatingReviewResponse
{
/**
* The title for the review
*/
@ApiMember(Description="The title for the review")
public String Title = null;
/**
* The description for the review
*/
@ApiMember(Description="The description for the review")
public String Description = null;
/**
* The rating score
*/
@ApiMember(Description="The rating score")
public Integer RatingScore = null;
/**
* The review author
*/
@ApiMember(Description="The review author")
public String Author = null;
/**
* The created date
*/
@ApiMember(Description="The created date")
public Date Created = null;
/**
* The review answer from the company
*/
@ApiMember(Description="The review answer from the company")
public String ReviewAnswer = null;
public String getTitle() { return Title; }
public RatingReviewResponse setTitle(String value) { this.Title = value; return this; }
public String getDescription() { return Description; }
public RatingReviewResponse setDescription(String value) { this.Description = value; return this; }
public Integer getRatingScore() { return RatingScore; }
public RatingReviewResponse setRatingScore(Integer value) { this.RatingScore = value; return this; }
public String getAuthor() { return Author; }
public RatingReviewResponse setAuthor(String value) { this.Author = value; return this; }
public Date getCreated() { return Created; }
public RatingReviewResponse setCreated(Date value) { this.Created = value; return this; }
public String getReviewAnswer() { return ReviewAnswer; }
public RatingReviewResponse setReviewAnswer(String value) { this.ReviewAnswer = value; return this; }
}
public static class CustomFieldConfigData
{
/**
* Custom field id
*/
@ApiMember(Description="Custom field id")
public Integer Id = null;
/**
* Configuration name. Example: 'Number of persons'.
*/
@ApiMember(Description="Configuration name. Example: 'Number of persons'.")
public String Name = null;
/**
* Custom field description. Example: 'For how many persons is this booking?'
*/
@ApiMember(Description="Custom field description. Example: 'For how many persons is this booking?'")
public String Description = null;
/**
* Field width. Example: 20 for 20px
*/
@ApiMember(Description="Field width. Example: 20 for 20px")
public Integer Width = null;
/**
* Data field of custom field. Valid values are: TextBox, ... Example: 'TextBox'
*/
@ApiMember(Description="Data field of custom field. Valid values are: TextBox, ... Example: 'TextBox'")
public String DataType = null;
/**
* Default value of the field. Example: '3'
*/
@ApiMember(Description="Default value of the field. Example: '3'")
public String DefaultValue = null;
/**
* Determines if the field is required to have a value or not
*/
@ApiMember(Description="Determines if the field is required to have a value or not")
public Boolean IsMandatory = null;
/**
* Error message shown to the user if the field data is required but not entered
*/
@ApiMember(Description="Error message shown to the user if the field data is required but not entered")
public String MandatoryErrorMessage = null;
/**
* Max lenght of the field
*/
@ApiMember(Description="Max lenght of the field")
public Integer MaxLength = null;
/**
* If the field should have multiple lines
*/
@ApiMember(Description="If the field should have multiple lines")
public Boolean MultipleLineText = null;
/**
* Regular expression used for validation of the field
*/
@ApiMember(Description="Regular expression used for validation of the field")
public String RegEx = null;
/**
* Error message shown if the regular expression validation failed
*/
@ApiMember(Description="Error message shown if the regular expression validation failed")
public String RegExErrorMessage = null;
/**
* The values to select from if Datatype is DropDown for this custom field
*/
@ApiMember(Description="The values to select from if Datatype is DropDown for this custom field")
public ArrayList<CustomFieldValueResponse> Values = null;
public Integer getId() { return Id; }
public CustomFieldConfigData setId(Integer value) { this.Id = value; return this; }
public String getName() { return Name; }
public CustomFieldConfigData setName(String value) { this.Name = value; return this; }
public String getDescription() { return Description; }
public CustomFieldConfigData setDescription(String value) { this.Description = value; return this; }
public Integer getWidth() { return Width; }
public CustomFieldConfigData setWidth(Integer value) { this.Width = value; return this; }
public String getDataType() { return DataType; }
public CustomFieldConfigData setDataType(String value) { this.DataType = value; return this; }
public String getDefaultValue() { return DefaultValue; }
public CustomFieldConfigData setDefaultValue(String value) { this.DefaultValue = value; return this; }
public Boolean getIsMandatory() { return IsMandatory; }
public CustomFieldConfigData setIsMandatory(Boolean value) { this.IsMandatory = value; return this; }
public String getMandatoryErrorMessage() { return MandatoryErrorMessage; }
public CustomFieldConfigData setMandatoryErrorMessage(String value) { this.MandatoryErrorMessage = value; return this; }
public Integer getMaxLength() { return MaxLength; }
public CustomFieldConfigData setMaxLength(Integer value) { this.MaxLength = value; return this; }
public Boolean isMultipleLineText() { return MultipleLineText; }
public CustomFieldConfigData setMultipleLineText(Boolean value) { this.MultipleLineText = value; return this; }
public String getRegEx() { return RegEx; }
public CustomFieldConfigData setRegEx(String value) { this.RegEx = value; return this; }
public String getRegExErrorMessage() { return RegExErrorMessage; }
public CustomFieldConfigData setRegExErrorMessage(String value) { this.RegExErrorMessage = value; return this; }
public ArrayList<CustomFieldValueResponse> getValues() { return Values; }
public CustomFieldConfigData setValues(ArrayList<CustomFieldValueResponse> value) { this.Values = value; return this; }
}
public static class CustomFieldValueResponse
{
public String Value = null;
public String getValue() { return Value; }
public CustomFieldValueResponse setValue(String value) { this.Value = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /companies/{Id}/copy HTTP/1.1
Host: api.bokamera.se
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Id: 00000000-0000-0000-0000-000000000000,
Name: String,
OrganisationNumber: String,
TypeId: 0,
CompanyOwnerId: 0,
Services:
[
0
],
ResourceTypes:
[
0
],
Resources:
[
0
],
RecurringSchedules:
[
0
],
DateSchedules:
[
0
],
OpeningHours: String,
Details: String,
CategoryId: 0,
Street1: String,
Street2: String,
ZipCode: String,
City: String,
CountryId: String,
Longitude: String,
Latitude: String,
Phone: String,
Email: String,
Fax: String,
Homepage: String,
SitePath: String,
CompanyUser:
{
Firstname: String,
Lastname: String,
Phone: String,
Email: String,
WorkerId: 0
},
BillingInformation:
{
BillingMethodId: 0,
Name: String,
Attention: String,
Street1: String,
Street2: String,
ZipCode: String,
City: String,
CountryId: String,
Email: String,
PaymentTermsDays: 0,
VatRegistrationNumber: String
},
LicenseTypeId: 0,
DomainName: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { Name: String, OrganisationNumber: String, TypeId: 0, Details: String, CategoryId: 0, Category: String, Street1: String, Street2: String, ZipCode: String, City: String, CountryId: String, Longitude: String, Latitude: String, Distance: 0, Phone: String, Email: String, Homepage: String, SitePath: String, Active: False, CodeLockSystem: Sample, IsFreeAccount: False, Updated: "0001-01-01T00:00:00", Created: "0001-01-01T00:00:00", StatusId: 0, IsFavorite: False, BookingAgreements: String, BookingSettings: { EnableMobileApp: False, BookingReceiptMessage: String, ShowFreeTimesLeft: False, EnableShowBookedTimes: False, BookingAgreement: String, WeekNumberSetting: 0, ShowBookedTimes: False, PaymentProviderId: 0, BookOnlyOnExistingCustomers: False, PaymentEnabled: False }, SystemSettings: { Active: False, InactiveMessage: String, Searchable: False, GATrackingId: String, GoogleAdsConversionId: String, LinkedinTagId: String, GoogleAdsConversionLabel: String, GTMTrackingId: String, FacebookPixelId: String, MultiLanguage: False, ShowOnMarketplace: False, EnableAPITranslation: False, DefaultLanguage: String, SendCustomerInformationToExternalProviders: False }, WidgetSettings: { ServiceLayoutId: 0, TimeLayoutId: 0, BookingLayoutId: 0, PrimaryColor: String, ShowServiceImage: False, ShowRebateCodeField: False, ShowNextAvailableTime: False, ShowEndTime: False, BookedTimeSlotText: String, DarkTheme: False, ShowSubscribeToNewsletter: False }, HomepageSettings: { HomepageHeading: String, WelcomePageHeading: String, WelcomePageBody: String, AboutUsPageHeading: String, AboutUsPageBody: String, ShowRating: False, HomePageTemplateId: 0, HeroSectionStyleId: 0, EnableHomepage: False }, RatingSummary: { AverageScore: 0, RatingScore1Count: 0, RatingScore2Count: 0, RatingScore3Count: 0, RaingScore4Count: 0, RatingScore5Count: 0, Count: 0 }, Reviews: [ { Title: String, Description: String, RatingScore: 0, Author: String, ReviewAnswer: String } ], CustomerCustomFields: [ { "Id": 0, "Name": "String", "Description": "String", "Width": 0, "DataType": "String", "DefaultValue": "String", "IsMandatory": false, "MandatoryErrorMessage": "String", "MaxLength": 0, "MultipleLineText": false, "RegEx": "String", "RegExErrorMessage": "String", "Values": [ { "Value": "String" } ] } ], ResponseStatus: { ErrorCode: String, Message: String, StackTrace: String, Errors: [ { ErrorCode: String, FieldName: String, Message: String, Meta: { String: String } } ], Meta: { String: String } } }