BokaMera.API.Host

<back to all web services

UpdateHomepageMenu

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
PUT/homepage/menuUpdate the homepage menuUpdate the homepage menu on the company of the currently logged in user, only administrators are allowed to update homepage menu.
import 'package:servicestack/servicestack.dart';

class HomepageMenuQueryResponse implements IConvertible
{
    /**
    * The company id
    */
    // @ApiMember(Description="The company id")
    String? CompanyId;

    /**
    * The text for home menu item
    */
    // @ApiMember(Description="The text for home menu item")
    String? HomeText;

    /**
    * If the home menu item should be hidden
    */
    // @ApiMember(Description="If the home menu item should be hidden")
    bool? HomeHidden;

    /**
    * The text for services menu item
    */
    // @ApiMember(Description="The text for services menu item")
    String? ServicesText;

    /**
    * If the services menu item should be hidden
    */
    // @ApiMember(Description="If the services menu item should be hidden")
    bool? ServicesHidden;

    /**
    * The text for book time menu item
    */
    // @ApiMember(Description="The text for book time menu item")
    String? BookTimeText;

    /**
    * If the book time menu item should be hidden
    */
    // @ApiMember(Description="If the book time menu item should be hidden")
    bool? BookTimeHidden;

    /**
    * The text for about us menu item
    */
    // @ApiMember(Description="The text for about us menu item")
    String? AboutUsText;

    /**
    * If the about us menu item should be hidden
    */
    // @ApiMember(Description="If the about us menu item should be hidden")
    bool? AboutUsHidden;

    /**
    * The text for contact us menu item
    */
    // @ApiMember(Description="The text for contact us menu item")
    String? ContactUsText;

    /**
    * If the contact us menu item should be hidden
    */
    // @ApiMember(Description="If the contact us menu item should be hidden")
    bool? ContactUsHidden;

    /**
    * The text for my bookings menu item
    */
    // @ApiMember(Description="The text for my bookings menu item")
    String? MyBookingsText;

    /**
    * If the my bookings menu item should be hidden
    */
    // @ApiMember(Description="If the my bookings menu item should be hidden")
    bool? MyBookingsHidden;

    /**
    * The text for calender menu item
    */
    // @ApiMember(Description="The text for calender menu item")
    String? CalendarText;

    /**
    * If the calendar menu item should be hidden
    */
    // @ApiMember(Description="If the calendar menu item should be hidden")
    bool? CalendarHidden;

    /**
    * The text for news menu item
    */
    // @ApiMember(Description="The text for news menu item")
    String? NewsText;

    /**
    * If the news menu item should be hidden
    */
    // @ApiMember(Description="If the news menu item should be hidden")
    bool? NewsHidden;

    /**
    * The text for address menu item
    */
    // @ApiMember(Description="The text for address menu item")
    String? AddressText;

    /**
    * If the address menu item should be hidden
    */
    // @ApiMember(Description="If the address menu item should be hidden")
    bool? AddressHidden;

    /**
    * The text for gallery menu item
    */
    // @ApiMember(Description="The text for gallery menu item")
    String? GalleryText;

    /**
    * If the gallery menu item should be hidden
    */
    // @ApiMember(Description="If the gallery menu item should be hidden")
    bool? GalleryHidden;

    ResponseStatus? ResponseStatus;

    HomepageMenuQueryResponse({this.CompanyId,this.HomeText,this.HomeHidden,this.ServicesText,this.ServicesHidden,this.BookTimeText,this.BookTimeHidden,this.AboutUsText,this.AboutUsHidden,this.ContactUsText,this.ContactUsHidden,this.MyBookingsText,this.MyBookingsHidden,this.CalendarText,this.CalendarHidden,this.NewsText,this.NewsHidden,this.AddressText,this.AddressHidden,this.GalleryText,this.GalleryHidden,this.ResponseStatus});
    HomepageMenuQueryResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CompanyId = json['CompanyId'];
        HomeText = json['HomeText'];
        HomeHidden = json['HomeHidden'];
        ServicesText = json['ServicesText'];
        ServicesHidden = json['ServicesHidden'];
        BookTimeText = json['BookTimeText'];
        BookTimeHidden = json['BookTimeHidden'];
        AboutUsText = json['AboutUsText'];
        AboutUsHidden = json['AboutUsHidden'];
        ContactUsText = json['ContactUsText'];
        ContactUsHidden = json['ContactUsHidden'];
        MyBookingsText = json['MyBookingsText'];
        MyBookingsHidden = json['MyBookingsHidden'];
        CalendarText = json['CalendarText'];
        CalendarHidden = json['CalendarHidden'];
        NewsText = json['NewsText'];
        NewsHidden = json['NewsHidden'];
        AddressText = json['AddressText'];
        AddressHidden = json['AddressHidden'];
        GalleryText = json['GalleryText'];
        GalleryHidden = json['GalleryHidden'];
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CompanyId': CompanyId,
        'HomeText': HomeText,
        'HomeHidden': HomeHidden,
        'ServicesText': ServicesText,
        'ServicesHidden': ServicesHidden,
        'BookTimeText': BookTimeText,
        'BookTimeHidden': BookTimeHidden,
        'AboutUsText': AboutUsText,
        'AboutUsHidden': AboutUsHidden,
        'ContactUsText': ContactUsText,
        'ContactUsHidden': ContactUsHidden,
        'MyBookingsText': MyBookingsText,
        'MyBookingsHidden': MyBookingsHidden,
        'CalendarText': CalendarText,
        'CalendarHidden': CalendarHidden,
        'NewsText': NewsText,
        'NewsHidden': NewsHidden,
        'AddressText': AddressText,
        'AddressHidden': AddressHidden,
        'GalleryText': GalleryText,
        'GalleryHidden': GalleryHidden,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "HomepageMenuQueryResponse";
    TypeContext? context = _ctx;
}

// @ValidateRequest(Validator="IsAuthenticated")
class UpdateHomepageMenu implements ICompany, IConvertible
{
    /**
    * 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.")
    String? CompanyId;

    /**
    * The text for home menu item
    */
    // @ApiMember(Description="The text for home menu item")
    String? HomeText;

    /**
    * If the home menu item should be hidden
    */
    // @ApiMember(Description="If the home menu item should be hidden")
    bool? HomeHidden;

    /**
    * The text for services menu item
    */
    // @ApiMember(Description="The text for services menu item")
    String? ServicesText;

    /**
    * If the services menu item should be hidden
    */
    // @ApiMember(Description="If the services menu item should be hidden")
    bool? ServicesHidden;

    /**
    * The text for book time menu item
    */
    // @ApiMember(Description="The text for book time menu item")
    String? BookTimeText;

    /**
    * If the book time menu item should be hidden
    */
    // @ApiMember(Description="If the book time menu item should be hidden")
    bool? BookTimeHidden;

    /**
    * The text for about us menu item
    */
    // @ApiMember(Description="The text for about us menu item")
    String? AboutUsText;

    /**
    * If the about us menu item should be hidden
    */
    // @ApiMember(Description="If the about us menu item should be hidden")
    bool? AboutUsHidden;

    /**
    * The text for contact us menu item
    */
    // @ApiMember(Description="The text for contact us menu item")
    String? ContactUsText;

    /**
    * If the contact us menu item should be hidden
    */
    // @ApiMember(Description="If the contact us menu item should be hidden")
    bool? ContactUsHidden;

    /**
    * The text for my bookings menu item
    */
    // @ApiMember(Description="The text for my bookings menu item")
    String? MyBookingsText;

    /**
    * If the my bookings menu item should be hidden
    */
    // @ApiMember(Description="If the my bookings menu item should be hidden")
    bool? MyBookingsHidden;

    /**
    * The text for calendar menu item
    */
    // @ApiMember(Description="The text for calendar menu item")
    String? CalendarText;

    /**
    * If the calendar menu item should be hidden
    */
    // @ApiMember(Description="If the calendar menu item should be hidden")
    bool? CalendarHidden;

    /**
    * The text for news menu item
    */
    // @ApiMember(Description="The text for news menu item")
    String? NewsText;

    /**
    * If the news menu item should be hidden
    */
    // @ApiMember(Description="If the news menu item should be hidden")
    bool? NewsHidden;

    /**
    * The text for address menu item
    */
    // @ApiMember(Description="The text for address menu item")
    String? AddressText;

    /**
    * If the address menu item should be hidden
    */
    // @ApiMember(Description="If the address menu item should be hidden")
    bool? AddressHidden;

    /**
    * The text for gallery menu item
    */
    // @ApiMember(Description="The text for gallery menu item")
    String? GalleryText;

    /**
    * If the gallery menu item should be hidden
    */
    // @ApiMember(Description="If the gallery menu item should be hidden")
    bool? GalleryHidden;

    UpdateHomepageMenu({this.CompanyId,this.HomeText,this.HomeHidden,this.ServicesText,this.ServicesHidden,this.BookTimeText,this.BookTimeHidden,this.AboutUsText,this.AboutUsHidden,this.ContactUsText,this.ContactUsHidden,this.MyBookingsText,this.MyBookingsHidden,this.CalendarText,this.CalendarHidden,this.NewsText,this.NewsHidden,this.AddressText,this.AddressHidden,this.GalleryText,this.GalleryHidden});
    UpdateHomepageMenu.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CompanyId = json['CompanyId'];
        HomeText = json['HomeText'];
        HomeHidden = json['HomeHidden'];
        ServicesText = json['ServicesText'];
        ServicesHidden = json['ServicesHidden'];
        BookTimeText = json['BookTimeText'];
        BookTimeHidden = json['BookTimeHidden'];
        AboutUsText = json['AboutUsText'];
        AboutUsHidden = json['AboutUsHidden'];
        ContactUsText = json['ContactUsText'];
        ContactUsHidden = json['ContactUsHidden'];
        MyBookingsText = json['MyBookingsText'];
        MyBookingsHidden = json['MyBookingsHidden'];
        CalendarText = json['CalendarText'];
        CalendarHidden = json['CalendarHidden'];
        NewsText = json['NewsText'];
        NewsHidden = json['NewsHidden'];
        AddressText = json['AddressText'];
        AddressHidden = json['AddressHidden'];
        GalleryText = json['GalleryText'];
        GalleryHidden = json['GalleryHidden'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CompanyId': CompanyId,
        'HomeText': HomeText,
        'HomeHidden': HomeHidden,
        'ServicesText': ServicesText,
        'ServicesHidden': ServicesHidden,
        'BookTimeText': BookTimeText,
        'BookTimeHidden': BookTimeHidden,
        'AboutUsText': AboutUsText,
        'AboutUsHidden': AboutUsHidden,
        'ContactUsText': ContactUsText,
        'ContactUsHidden': ContactUsHidden,
        'MyBookingsText': MyBookingsText,
        'MyBookingsHidden': MyBookingsHidden,
        'CalendarText': CalendarText,
        'CalendarHidden': CalendarHidden,
        'NewsText': NewsText,
        'NewsHidden': NewsHidden,
        'AddressText': AddressText,
        'AddressHidden': AddressHidden,
        'GalleryText': GalleryText,
        'GalleryHidden': GalleryHidden
    };

    getTypeName() => "UpdateHomepageMenu";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: <String, TypeInfo> {
    'HomepageMenuQueryResponse': TypeInfo(TypeOf.Class, create:() => HomepageMenuQueryResponse()),
    'UpdateHomepageMenu': TypeInfo(TypeOf.Class, create:() => UpdateHomepageMenu()),
});

Dart UpdateHomepageMenu DTOs

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

HTTP + OTHER

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

PUT /homepage/menu HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","HomeText":"String","HomeHidden":false,"ServicesText":"String","ServicesHidden":false,"BookTimeText":"String","BookTimeHidden":false,"AboutUsText":"String","AboutUsHidden":false,"ContactUsText":"String","ContactUsHidden":false,"MyBookingsText":"String","MyBookingsHidden":false,"CalendarText":"String","CalendarHidden":false,"NewsText":"String","NewsHidden":false,"AddressText":"String","AddressHidden":false,"GalleryText":"String","GalleryHidden":false}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"HomeText":"String","HomeHidden":false,"ServicesText":"String","ServicesHidden":false,"BookTimeText":"String","BookTimeHidden":false,"AboutUsText":"String","AboutUsHidden":false,"ContactUsText":"String","ContactUsHidden":false,"MyBookingsText":"String","MyBookingsHidden":false,"CalendarText":"String","CalendarHidden":false,"NewsText":"String","NewsHidden":false,"AddressText":"String","AddressHidden":false,"GalleryText":"String","GalleryHidden":false,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}