Backend Dynamic Homepage
Homepage Categories
title_entitle_thstatus(boolean)punch_line_enpunch_line_thsection_template:banner(hero banner + search bar)homepage_iconpromotion_bannerrecommended_tag(optional)4_outlet_card6_outlet_cardgroup_card(requires cover image)tag_defaulthh_specialbrand_card(optional)
end_point_apipositionlinkbranch_idgroup_tag_idtag_id
- Hero Banner: New API, if click edit will open edit banner but only for Hero Banner
- API: {{ base_api }}/homes/section_banner.json
- Search Icon Homepage > New API (endpoint not yet defined — update when available)
- Promo/Promotion Banner: edit will open banner setting
- API: {{ base_api }}/banners.json
- Type: group_card/4_outlet_card/6_outlet_card
- Branch
- API: {{ base_api }}/branch/{id}/restaurants.json
- type: restaurants
- Restaurant Tag Group
- API: {{ base_api }}/restaurant_tag_groups/{id}.json
- type: featured_restaurants
- Restaurant Tag
- API: {{ base_api }}/restaurant_tags/{id}/restaurants.json
- type: featured_restaurants
- New Restaurant API (section_9)
- Top Restaurant API (section_8)
- Featured Restaurant (section_1)
- Branch
- Tag Sections
- API: API restaurant tag by slug?
- type: restaurant_tags
- Node Display (HH Special)
- API: {{ base_api }}/hungryhub_specials
- type: hh_special
- Near Me (search by latlong) (fixed) can’t edited only change position and active/inactive
- Popular Brands (fixed) The following legacy sections need to be deleted (they are no longer used in the current homepage layout):
section_6section_11section_13
Restaurant section added:
section_templatecover_image(required whensection_templateisgroup_card)
Query parameter example:
city_id(for example:city_id=1)
{
"data": [
{
"id": "85",
"type": "homepage_section",
"attributes": {
"title": "Hero Banner",
"active": true,
"punch_line": "Apa gitu",
"section_template": "single_banner",
"type": "banner",
"end_point_api": "/homes/section_banner.json",
"position": 1,
"image_cover_url": "/uploads/branch/logo/85/ww.jpg",
"link": "https://web.hungryhub.com/restaurants/group/top-mall-restaurants-deals-2023?locale=en",
"slug":"",
"branch_id": "",
"group_tag_id": "",
"tag_id": ""
}
},
{
"id": "85",
"type": "homepage_section",
"attributes": {
"title": "Promotion Banner",
"active": true,
"punch_line": "Apa gitu",
"section_template": "promotion_banner",
"type": "banner",
"end_point_api": "/banners.json",
"position": 2,
"image_cover_url": "/uploads/branch/logo/85/ww.jpg",
"link": "https://web.hungryhub.com/restaurants/group/top-mall-restaurants-deals-2023?locale=en",
"slug":"",
"branch_id": "",
"group_tag_id": "",
"tag_id": ""
}
},
{
"id": "85",
"type": "homepage_section",
"attributes": {
"title": "New Restaurant",
"active": true,
"punch_line": "New New New",
"section_template": "group_card",
"type": "featured_restaurants",
"end_point_api": "/homes/section_8.json?city_id=1",
"position": 3,
"image_cover_url": "/uploads/branch/logo/85/ww.jpg",
"link": "https://web.hungryhub.com/restaurants/group/top-mall-restaurants-deals-2023?locale=en",
"slug":"top-cuisine",
"branch_id": "",
"group_tag_id": "",
"tag_id": ""
}
},
{
"id": "85",
"type": "homepage_section",
"attributes": {
"title": "Top Cuisine",
"active": true,
"punch_line": "Cuisine is gud",
"section_template": "tag",
"type": "restaurant_tags",
"end_point_api": "/homes/section_7.json",
"position": 4,
"image_cover_url": "/uploads/branch/logo/85/ww.jpg",
"link": "https://web.hungryhub.com/restaurants/group/top-mall-restaurants-deals-2023?locale=en",
"slug":"top-cuisine",
"branch_id": "",
"group_tag_id": "",
"tag_id": ""
}
},
{
"id": "85",
"type": "homepage_section",
"attributes": {
"title": "Group Landing/Promotion/Branch",
"active": true,
"punch_line": "Pokoknya punchline",
"section_template": "4_outlet_card",
"type": "featured_restaurants",
"end_point_api": "/search.json?tag_id=12",
"position": 4,
"image_cover_url": "/uploads/branch/logo/85/ww.jpg",
"link": "https://web.hungryhub.com/restaurants/group/top-mall-restaurants-deals-2023?locale=en",
"slug":"top-mall-restaurants-deals-2023",
"branch_id": "",
"group_tag_id": "",
"tag_id": "12"
}
}
],
"status": true,
"message": null
}