changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "properties": {
+ "api": {
+ "description": "Always \"buildbatch-assistant\".",
+ "type": "string"
+ },
+ "ask": {
+ "description": "When ok is false: the ids of the questions in ask_questions to ask the person, in order.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "assumed": {
+ "description": "What was taken as not given, with the value taken (a missing height is a 2.4 m ceiling).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "assumptions": {
+ "description": "detail \"full\": what the whole list assumes.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "document": {
+ "description": "\"plan-summary\" for the short answer; the planner's own name for detail \"full\" or a refusal.",
+ "type": "string"
+ },
+ "error": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ }
+ ],
+ "description": "When ok is false: why the call was refused, as words or as { code, message }."
+ },
+ "figures": {
+ "description": "What generic, typical and user mean.",
+ "type": "string"
+ },
+ "first": {
+ "description": "What has to be in place before the job starts, as toBuy's items: not a thing to buy.",
+ "items": {
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "honesty": {
+ "description": "detail \"full\": the formulas' versions, how far the figures have been checked, and what the shop links are.",
+ "type": "object"
+ },
+ "ignored": {
+ "description": "Arguments that were not used, with why.",
+ "type": "array"
+ },
+ "leftovers": {
+ "description": "What will be left over once the whole packs are bought.",
+ "type": "array"
+ },
+ "lines": {
+ "description": "detail \"full\": every line with its working, packs, figures and each shop's search link.",
+ "type": "array"
+ },
+ "links": {
+ "description": "What listUrl and startUrl open, in words.",
+ "type": "object"
+ },
+ "listUrl": {
+ "description": "The whole list on buildbatch.co.uk, as a link a person can open.",
+ "type": "string"
+ },
+ "more": {
+ "description": "What plan_room with detail \"full\" adds.",
+ "type": "string"
+ },
+ "next": {
+ "description": "When ok is false: what to do next.",
+ "type": "string"
+ },
+ "notUsed": {
+ "description": "Arguments that were sent and not used, with why.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "ok": {
+ "description": "true: a list was made. false: the call was refused, and error says why.",
+ "type": "boolean"
+ },
+ "prices": {
+ "description": "That no price is shown or used in this answer.",
+ "type": "string"
+ },
+ "problems": {
+ "description": "When ok is false: each argument that is missing or not understood, with the id of its question in ask_questions.",
+ "items": {
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "review": {
+ "description": "How far the figures have been checked: not yet by a tradesperson.",
+ "type": "string"
+ },
+ "room": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "object"
+ }
+ ],
+ "description": "The room as the planner understood it: a sentence (metres, as worked out), or with detail \"full\" its areas and lengths."
+ },
+ "shops": {
+ "description": "detail \"full\": the shops each line's search link goes to.",
+ "type": "array"
+ },
+ "startUrl": {
+ "description": "The planner opened on this room, to change it.",
+ "type": "string"
+ },
+ "startUrlNote": {
+ "description": "What the startUrl link opens.",
+ "type": "string"
+ },
+ "statuses": {
+ "description": "detail \"full\": what each line's status means.",
+ "type": "object"
+ },
+ "summary": {
+ "description": "detail \"full\": the counts and the short list.",
+ "type": "object"
+ },
+ "toAnswer": {
+ "description": "Questions whose answers would change the list.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "toBuy": {
+ "description": "Each thing to buy, in the order of the list.",
+ "items": {
+ "properties": {
+ "checkFirst": {
+ "description": "What to check before buying.",
+ "type": "string"
+ },
+ "examplePack": {
+ "description": "The example pack kept beside a figure sent.",
+ "type": "boolean"
+ },
+ "figures": {
+ "description": "generic, typical or user: see figures.",
+ "type": "string"
+ },
+ "figuresFrom": {
+ "description": "A typical figure's sources and the day read.",
+ "type": "string"
+ },
+ "figuresNote": {
+ "description": "Which figures are whose.",
+ "type": "string"
+ },
+ "item": {
+ "description": "What to buy.",
+ "type": "string"
+ },
+ "needed": {
+ "description": "Paint: the litres needed before rounding up to tins.",
+ "type": "string"
+ },
+ "quantity": {
+ "description": "How much to buy, in the planner's words: whole packs as sold, a part pack rounded up (\"1 × 5 L + 1 × 2.5 L\"), or an amount to order or to cover where it is not sold in packs (\"1.32 m³ to order\").",
+ "type": "string"
+ },
+ "question": {
+ "description": "A line to check: its question and answers.",
+ "type": "object"
+ },
+ "why": {
+ "description": "How it was worked out.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "item"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "toCheck": {
+ "description": "Each thing that depends on the person's own job, as toBuy's items, with its question.",
+ "items": {
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "typicalRoom": {
+ "description": "When a typical room was used: its id, label and a note that these are not the person's own measurements.",
+ "type": "object"
+ },
+ "understood": {
+ "description": "detail \"full\": every argument as the planner read it.",
+ "type": "object"
+ },
+ "v": {
+ "description": "The version number of the planner's link and answer format.",
+ "type": "number"
+ },
+ "warnings": {
+ "description": "Warnings that come with the list.",
+ "type": "array"
+ }
+ },
+ "required": [
+ "ok"
+ ],
+ "type": "object"
+}