Raw schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"maxLength": 200
},
"unit": {
"type": "string",
"enum": [
"g",
"kg",
"oz",
"lb"
],
"description": "The unit the list displays in. Weights are in grams regardless."
},
"start_date": {
"type": "string",
"description": "YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "YYYY-MM-DD"
},
"trail_url": {
"type": "string",
"maxLength": 2000,
"description": "An http(s) link to the route or trail page."
},
"trail_label": {
"type": "string",
"maxLength": 120,
"description": "What to call the trail, when the link's own name won't do."
},
"trail_distance_km": {
"type": "number",
"minimum": 0
},
"folders": {
"type": "array",
"description": "Folders in order, each with its default classification and, optionally, its rows.",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 120
},
"classification": {
"type": "string",
"enum": [
"base",
"worn",
"consumable"
],
"description": "What rows in this folder count as unless they say otherwise. Default base."
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"description": "The product or item name. Required."
},
"brand": {
"type": "string",
"maxLength": 120,
"description": "The maker, when known."
},
"variant": {
"type": "string",
"maxLength": 120,
"description": "Size, length or configuration that changes the weight, such as Long or 20F."
},
"gear_type": {
"type": "string",
"maxLength": 120,
"description": "What kind of thing it is: Tent, Quilt, Trail runners."
},
"weight_g": {
"type": "number",
"minimum": 0,
"description": "Weight of ONE unit, in grams. Omit when unknown; the list keeps working without it, and a row with a catalog_id takes the catalog's cited weight."
},
"qty": {
"type": "integer",
"minimum": 1,
"maximum": 9999,
"description": "How many. Default 1."
},
"classification": {
"type": "string",
"enum": [
"base",
"worn",
"consumable"
],
"description": "base, worn or consumable. Omit to follow the folder's default."
},
"worn_qty": {
"type": "integer",
"minimum": 0,
"description": "Of qty, how many are worn rather than carried (three pairs of socks, one on your feet). For a row that is entirely worn, set classification to worn instead."
},
"note": {
"type": "string",
"maxLength": 2000,
"description": "A short free-text note on the row."
},
"kcal": {
"type": "integer",
"minimum": 0,
"description": "Calories per unit, for food."
},
"catalog_id": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "A catalog row id from search_catalog. The row takes the catalog's brand, name, variant, gear type and cited weight, and follows catalog corrections; a weight_g given as well is kept as your own figure."
},
"folder": {
"type": "string",
"maxLength": 120,
"description": "The folder to put it in, by name. Created when the list has no folder of that name."
}
},
"required": [
"name"
]
}
}
},
"required": [
"name"
]
}
},
"items": {
"type": "array",
"description": "Rows not placed through a folder above; each may name its folder.",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"description": "The product or item name. Required."
},
"brand": {
"type": "string",
"maxLength": 120,
"description": "The maker, when known."
},
"variant": {
"type": "string",
"maxLength": 120,
"description": "Size, length or configuration that changes the weight, such as Long or 20F."
},
"gear_type": {
"type": "string",
"maxLength": 120,
"description": "What kind of thing it is: Tent, Quilt, Trail runners."
},
"weight_g": {
"type": "number",
"minimum": 0,
"description": "Weight of ONE unit, in grams. Omit when unknown; the list keeps working without it, and a row with a catalog_id takes the catalog's cited weight."
},
"qty": {
"type": "integer",
"minimum": 1,
"maximum": 9999,
"description": "How many. Default 1."
},
"classification": {
"type": "string",
"enum": [
"base",
"worn",
"consumable"
],
"description": "base, worn or consumable. Omit to follow the folder's default."
},
"worn_qty": {
"type": "integer",
"minimum": 0,
"description": "Of qty, how many are worn rather than carried (three pairs of socks, one on your feet). For a row that is entirely worn, set classification to worn instead."
},
"note": {
"type": "string",
"maxLength": 2000,
"description": "A short free-text note on the row."
},
"kcal": {
"type": "integer",
"minimum": 0,
"description": "Calories per unit, for food."
},
"catalog_id": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "A catalog row id from search_catalog. The row takes the catalog's brand, name, variant, gear type and cited weight, and follows catalog corrections; a weight_g given as well is kept as your own figure."
},
"folder": {
"type": "string",
"maxLength": 120,
"description": "The folder to put it in, by name. Created when the list has no folder of that name."
}
},
"required": [
"name"
]
}
}
}
}