Metadata Builder
Author a data resource's metadata — field kinds, enum domains, and the request/response protocol — then hand it to any consumer as meta.json.
METADATA BUILDER
Set up an AI connection first (top-right ✨).
1
idstringcolumnsortable
2
titlestringcolumnsortablefilterable
3
pricenumericcolumnsortablefilterable
4
createdAtdatekind —sortable
5
inStockbooleankind —
6
author.namestringjsonbsortablefilterable
7
statusstringcolumnfilterableenum·3
7 fields · 4 filterable
select or add a field
{
"fields": [
{
"key": "id",
"label": "ID",
"dataType": "string",
"sortable": true,
"kind": "column"
},
{
"key": "title",
"label": "Title",
"dataType": "string",
"sortable": true,
"filterable": true,
"kind": "column"
},
{
"key": "price",
"label": {
"en": "Price",
"zh-TW": "價格"
},
"dataType": "numeric",
"format": "currency",
"sortable": true,
"filterable": true,
"kind": "column"
},
{
"key": "createdAt",
"label": "Created",
"dataType": "date",
"format": "date",
"sortable": true
},
{
"key": "inStock",
"label": "In stock",
"dataType": "boolean"
},
{
"key": "author.name",
"label": "Author",
"dataType": "string",
"sortable": true,
"filterable": true,
"kind": "jsonb"
},
{
"key": "status",
"label": "Status",
"dataType": "string",
"options": [
{
"value": "draft",
"label": "Draft"
},
{
"value": "published",
"label": "Published"
},
{
"value": "archived",
"label": "Archived"
}
],
"filterable": true,
"kind": "column"
}
],
"request": {
"endpoint": "/api/query/sample",
"method": "POST",
"pagination": {
"strategy": "offset",
"limitParam": "limit",
"offsetParam": "offset"
},
"sort": {
"style": "single",
"param": "sort",
"encoding": "colon"
},
"filter": {
"style": "pg",
"param": "filter"
}
},
"response": {
"rowsPath": "data.items",
"totalPath": "data.total",
"cursorPath": "data.nextCursor"
}
}