Skip to end of banner
Go to start of banner

Layout Blocks - JSON Schemas Resource # 1 - Basis

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Current »

In this document, we provide a resource of the basis JSON Schemas to be used for your project.

These schemas are provided for references and they don’t have to be used as provided and are only provided as a helper for your project.

You can also download the provided Complete Layout Block and import them directly as new Layout Block in the Boxalino Intelligence Admin > Marketing > Layout Blocks.

Download all the separate Complete Layout Block files (zip):

Download all the Complete Layout Blocks in one importable list:

product

display one specific product in a grid or a slider

 JSON Schema
{
  "title": "Product",
  "type": "object",
  "properties": {
    "accessor": {
      "type": "string",
      "description": "hits accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

product_slider

display a container of products as a slider (children blocks should be product Layout Blocks)

 JSON Schema

localized properties must be adapted to match your e-shop languages.

{
  "title": "Label",
  "type": "object",
  "properties": {
    "title": {
      "type": "object",
      "title": "Label",
      "properties": {
        "de": {
          "type": "string",
          "description": "label in German"
        },
        "fr": {
          "type": "string",
          "description": "label in French"
        }
      }
    },
    "see_all_label": {
      "type": "object",
      "title": "See all link label",
      "properties": {
        "de": {
          "type": "string",
          "description": "see all link label in German"
        },
        "fr": {
          "type": "string",
          "description": "see all link label in French"
        }
      }
    },
    "see_all_link": {
      "type": "object",
      "title": "See all link",
      "properties": {
        "de": {
          "type": "string",
          "description": "see all link in German"
        },
        "fr": {
          "type": "string",
          "description": "see all link in French"
        }
      }
    },
    "accessor": {
      "type": "string",
      "description": "hits accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

product_list

display a container of products as a list or grid (children blocks should be product Layout Blocks)

 JSON Schema

localized properties must be adapted to match your e-shop languages.

{
  "title": "Label",
  "type": "object",
  "properties": {
    "title": {
      "type": "object",
      "title": "Label",
      "properties": {
        "de": {
          "type": "string",
          "description": "label in German"
        },
        "fr": {
          "type": "string",
          "description": "label in French"
        }
      }
    },
    "see_all_label": {
      "type": "object",
      "title": "See all link label",
      "properties": {
        "de": {
          "type": "string",
          "description": "see all link label in German"
        },
        "fr": {
          "type": "string",
          "description": "see all link label in French"
        }
      }
    },
    "see_all_link": {
      "type": "object",
      "title": "See all link",
      "properties": {
        "de": {
          "type": "string",
          "description": "see all link in German"
        },
        "fr": {
          "type": "string",
          "description": "see all link in French"
        }
      }
    },
    "accessor": {
      "type": "string",
      "description": "hits accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

autocomplete_product

display one specific product in a search autocomplete overlay

 JSON Schema
{
  "title": "Product",
  "type": "object",
  "properties": {
    "accessor": {
      "type": "string",
      "description": "hits accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

autocomplete_product_list

display a container of products as a list in a search autocomplete overlay (children blocks should be autocomplete_product Layout Blocks)

 JSON Schema

localized properties must be adapted to match your e-shop languages.

{
  "title": "Label",
  "type": "object",
  "properties": {
    "title": {
      "type": "object",
      "title": "Label",
      "properties": {
        "de": {
          "type": "string",
          "description": "label in German"
        },
        "fr": {
          "type": "string",
          "description": "label in French"
        }
      }
    },
    "see_all_label": {
      "type": "object",
      "title": "See all link label",
      "properties": {
        "de": {
          "type": "string",
          "description": "see all link label in German"
        },
        "fr": {
          "type": "string",
          "description": "see all link label in French"
        }
      }
    },
    "see_all_link": {
      "type": "object",
      "title": "See all link",
      "properties": {
        "de": {
          "type": "string",
          "description": "see all link in German"
        },
        "fr": {
          "type": "string",
          "description": "see all link in French"
        }
      }
    },
    "accessor": {
      "type": "string",
      "description": "hits accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

autocomplete_text

display one specific textual suggestion in a search autocomplete overlay

 JSON Schema
{
  "title": "Autocomplete Text",
  "type": "object",
  "properties": {
    "accessor": {
      "type": "string",
      "description": "autocomplete accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

autocomplete_text_list

display a container of text as a list in a search autocomplete overlay (children blocks should be autocomplete_text Layout Blocks)

 JSON Schema
{
  "title": "Autocomplete Text List",
  "type": "object",
  "properties": {
    "accessor": {
      "type": "string",
      "description": "ac-queries accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

product_list_bar

a bar appearing before or after the product list to indicate the number of results, offer pagination and change of sort order

 JSON Schema
{
  "title": "Product",
  "type": "object",
  "properties": {
    "accessor": {
      "type": "string",
      "description": "hits accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

pagination

a component to appear as a child element of a product_list_bar Layout Block and which displays the pagination controls to the user

 JSON Schema
{
  "title": "Pagination",
  "type": "object",
  "properties": {
    "accessor": {
      "type": "string",
      "description": "hits accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

title

a simple title element showing a title H1 on the whole width of the page

 JSON Schema

localized properties must be adapted to match your e-shop languages.

{
  "title": "Title (H1)",
  "type": "object",
  "properties": {
    "title": {
      "type": "object",
      "title": "Title",
      "properties": {
        "de": {
          "type": "string",
          "description": "title in German"
        },
        "fr": {
          "type": "string",
          "description": "title in French"
        }
      }
    }
  }
}

Complete Layout Block:

subtitle

a simple title element showing a sub-title H3 on the whole width of the page

 JSON Schema

localized properties must be adapted to match your e-shop languages.

{
  "title": "Subtitle (H3)",
  "type": "object",
  "properties": {
    "title": {
      "type": "object",
      "title": "Title",
      "properties": {
        "de": {
          "type": "string",
          "description": "Subtitle in German"
        },
        "fr": {
          "type": "string",
          "description": "Subtitle in French"
        }
      }
    }
  }
}

Complete Layout Block:

search_title

a simple title element showing a search title H1 on the whole width of the page (very similar template to integrate, but has a different internal behavior in Boxalino due to the parameter bx-search-title.

 JSON Schema

localized properties must be adapted to match your e-shop languages.

{
  "title": "Title (H1)",
  "type": "object",
  "properties": {
    "title": {
      "type": "object",
      "title": "Normal Search Title",
      "properties": {
        "de": {
          "type": "string",
          "description": "normal search titlein German"
        },
        "fr": {
          "type": "string",
          "description": "normal search title in French"
        }
      }
    },
    "bx_alternate_title": {
      "type": "object",
      "title": "Corrected Search Title",
      "properties": {
        "de": {
          "type": "string",
          "description": "corrected search title in German"
        },
        "fr": {
          "type": "string",
          "description": "corrected search titlein French"
        }
      }
    },
    "accessor": {
      "type": "string",
      "description": "search accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

facet_list

display the facets in a search or navigation page (has no children blocks, all the facets are provided as an array in the response parameter bx-facets)

 JSON Schema
{
  "title": "Facets",
  "type": "object",
  "properties": {
    "accessor": {
      "type": "string",
      "description": "facet accessor (typically leave empty)"
    }
  }
}

Complete Layout Block:

  • No labels