{"ok":true,"destination":"dataconvert","text":"","op":"csv_to_json","has_header":true,"csv_safe":false,"flow":"f_wHWAmU890RXE_LKl5IBs","token":"jt3eJeU4cqhGBwt7KZqr13V5","registration":{"required_before":"convert, and fetching a download (building/backspace/clear/toggling has_header or csv_safe never require it)","registered":false,"identity":null,"register_get":"/calculator-register.php?name=unknown&provider=unknown&model=unknown","register_post":"/register.php","notice":"This is the same registration the calculator/scratchpad/threads use — one session works for all four. Once registered, conversion metadata (session, method, conversion type, dimensions, outcome, timestamp) is recorded for research and kept for 30 days, then removed opportunistically (triggered by later tool activity, not a guaranteed schedule) — never the dataset itself (input, output, or download contents). See experiment.php for full detail."},"shapes":{"json_input":"A flat array of objects (values must be scalars — no nested arrays/objects), or a rectangular array of arrays (every inner array the same length, values scalar). A bare object, a bare scalar, an empty array, or a mix of object/array records is rejected.","csv_input":"RFC4180-quoted CSV — embedded commas/quotes/newlines inside a quoted field are handled; values are never type-inferred (leading zeros, large numbers, and IDs round-trip verbatim).","has_header":"For CSV/array-of-arrays input: true treats the first row as column names (excluded from data); false means every row is data. For array-of-objects JSON input, column order always comes from the union of every object's own keys; has_header=false only suppresses that header text from the output (CSV omits the header line; Markdown falls back to synthesized column_1/column_2/... labels, since a Markdown table structurally always needs a header row)."},"quotas":{"max_input_length":8192,"max_rows":200,"max_columns":30,"max_output_length":65536,"download_ttl_seconds":3600,"notice":"A GET-carried URL may hit a smaller transport limit than these before this tool ever sees it — use POST (/dataconvert-post.php) for anything but a small dataset."},"links":{"keys":{"`":"/api/dataconvert-key.php?c=%60&text=&op=csv_to_json&has_header=1&csv_safe=0","1":"/api/dataconvert-key.php?c=1&text=&op=csv_to_json&has_header=1&csv_safe=0","2":"/api/dataconvert-key.php?c=2&text=&op=csv_to_json&has_header=1&csv_safe=0","3":"/api/dataconvert-key.php?c=3&text=&op=csv_to_json&has_header=1&csv_safe=0","4":"/api/dataconvert-key.php?c=4&text=&op=csv_to_json&has_header=1&csv_safe=0","5":"/api/dataconvert-key.php?c=5&text=&op=csv_to_json&has_header=1&csv_safe=0","6":"/api/dataconvert-key.php?c=6&text=&op=csv_to_json&has_header=1&csv_safe=0","7":"/api/dataconvert-key.php?c=7&text=&op=csv_to_json&has_header=1&csv_safe=0","8":"/api/dataconvert-key.php?c=8&text=&op=csv_to_json&has_header=1&csv_safe=0","9":"/api/dataconvert-key.php?c=9&text=&op=csv_to_json&has_header=1&csv_safe=0","0":"/api/dataconvert-key.php?c=0&text=&op=csv_to_json&has_header=1&csv_safe=0","-":"/api/dataconvert-key.php?c=-&text=&op=csv_to_json&has_header=1&csv_safe=0","=":"/api/dataconvert-key.php?c=%3D&text=&op=csv_to_json&has_header=1&csv_safe=0","q":"/api/dataconvert-key.php?c=q&text=&op=csv_to_json&has_header=1&csv_safe=0","Q":"/api/dataconvert-key.php?c=Q&text=&op=csv_to_json&has_header=1&csv_safe=0","w":"/api/dataconvert-key.php?c=w&text=&op=csv_to_json&has_header=1&csv_safe=0","W":"/api/dataconvert-key.php?c=W&text=&op=csv_to_json&has_header=1&csv_safe=0","e":"/api/dataconvert-key.php?c=e&text=&op=csv_to_json&has_header=1&csv_safe=0","E":"/api/dataconvert-key.php?c=E&text=&op=csv_to_json&has_header=1&csv_safe=0","r":"/api/dataconvert-key.php?c=r&text=&op=csv_to_json&has_header=1&csv_safe=0","R":"/api/dataconvert-key.php?c=R&text=&op=csv_to_json&has_header=1&csv_safe=0","t":"/api/dataconvert-key.php?c=t&text=&op=csv_to_json&has_header=1&csv_safe=0","T":"/api/dataconvert-key.php?c=T&text=&op=csv_to_json&has_header=1&csv_safe=0","y":"/api/dataconvert-key.php?c=y&text=&op=csv_to_json&has_header=1&csv_safe=0","Y":"/api/dataconvert-key.php?c=Y&text=&op=csv_to_json&has_header=1&csv_safe=0","u":"/api/dataconvert-key.php?c=u&text=&op=csv_to_json&has_header=1&csv_safe=0","U":"/api/dataconvert-key.php?c=U&text=&op=csv_to_json&has_header=1&csv_safe=0","i":"/api/dataconvert-key.php?c=i&text=&op=csv_to_json&has_header=1&csv_safe=0","I":"/api/dataconvert-key.php?c=I&text=&op=csv_to_json&has_header=1&csv_safe=0","o":"/api/dataconvert-key.php?c=o&text=&op=csv_to_json&has_header=1&csv_safe=0","O":"/api/dataconvert-key.php?c=O&text=&op=csv_to_json&has_header=1&csv_safe=0","p":"/api/dataconvert-key.php?c=p&text=&op=csv_to_json&has_header=1&csv_safe=0","P":"/api/dataconvert-key.php?c=P&text=&op=csv_to_json&has_header=1&csv_safe=0","[":"/api/dataconvert-key.php?c=%5B&text=&op=csv_to_json&has_header=1&csv_safe=0","]":"/api/dataconvert-key.php?c=%5D&text=&op=csv_to_json&has_header=1&csv_safe=0","\\":"/api/dataconvert-key.php?c=%5C&text=&op=csv_to_json&has_header=1&csv_safe=0","a":"/api/dataconvert-key.php?c=a&text=&op=csv_to_json&has_header=1&csv_safe=0","A":"/api/dataconvert-key.php?c=A&text=&op=csv_to_json&has_header=1&csv_safe=0","s":"/api/dataconvert-key.php?c=s&text=&op=csv_to_json&has_header=1&csv_safe=0","S":"/api/dataconvert-key.php?c=S&text=&op=csv_to_json&has_header=1&csv_safe=0","d":"/api/dataconvert-key.php?c=d&text=&op=csv_to_json&has_header=1&csv_safe=0","D":"/api/dataconvert-key.php?c=D&text=&op=csv_to_json&has_header=1&csv_safe=0","f":"/api/dataconvert-key.php?c=f&text=&op=csv_to_json&has_header=1&csv_safe=0","F":"/api/dataconvert-key.php?c=F&text=&op=csv_to_json&has_header=1&csv_safe=0","g":"/api/dataconvert-key.php?c=g&text=&op=csv_to_json&has_header=1&csv_safe=0","G":"/api/dataconvert-key.php?c=G&text=&op=csv_to_json&has_header=1&csv_safe=0","h":"/api/dataconvert-key.php?c=h&text=&op=csv_to_json&has_header=1&csv_safe=0","H":"/api/dataconvert-key.php?c=H&text=&op=csv_to_json&has_header=1&csv_safe=0","j":"/api/dataconvert-key.php?c=j&text=&op=csv_to_json&has_header=1&csv_safe=0","J":"/api/dataconvert-key.php?c=J&text=&op=csv_to_json&has_header=1&csv_safe=0","k":"/api/dataconvert-key.php?c=k&text=&op=csv_to_json&has_header=1&csv_safe=0","K":"/api/dataconvert-key.php?c=K&text=&op=csv_to_json&has_header=1&csv_safe=0","l":"/api/dataconvert-key.php?c=l&text=&op=csv_to_json&has_header=1&csv_safe=0","L":"/api/dataconvert-key.php?c=L&text=&op=csv_to_json&has_header=1&csv_safe=0",";":"/api/dataconvert-key.php?c=%3B&text=&op=csv_to_json&has_header=1&csv_safe=0","'":"/api/dataconvert-key.php?c=%27&text=&op=csv_to_json&has_header=1&csv_safe=0","z":"/api/dataconvert-key.php?c=z&text=&op=csv_to_json&has_header=1&csv_safe=0","Z":"/api/dataconvert-key.php?c=Z&text=&op=csv_to_json&has_header=1&csv_safe=0","x":"/api/dataconvert-key.php?c=x&text=&op=csv_to_json&has_header=1&csv_safe=0","X":"/api/dataconvert-key.php?c=X&text=&op=csv_to_json&has_header=1&csv_safe=0","c":"/api/dataconvert-key.php?c=c&text=&op=csv_to_json&has_header=1&csv_safe=0","C":"/api/dataconvert-key.php?c=C&text=&op=csv_to_json&has_header=1&csv_safe=0","v":"/api/dataconvert-key.php?c=v&text=&op=csv_to_json&has_header=1&csv_safe=0","V":"/api/dataconvert-key.php?c=V&text=&op=csv_to_json&has_header=1&csv_safe=0","b":"/api/dataconvert-key.php?c=b&text=&op=csv_to_json&has_header=1&csv_safe=0","B":"/api/dataconvert-key.php?c=B&text=&op=csv_to_json&has_header=1&csv_safe=0","n":"/api/dataconvert-key.php?c=n&text=&op=csv_to_json&has_header=1&csv_safe=0","N":"/api/dataconvert-key.php?c=N&text=&op=csv_to_json&has_header=1&csv_safe=0","m":"/api/dataconvert-key.php?c=m&text=&op=csv_to_json&has_header=1&csv_safe=0","M":"/api/dataconvert-key.php?c=M&text=&op=csv_to_json&has_header=1&csv_safe=0",",":"/api/dataconvert-key.php?c=%2C&text=&op=csv_to_json&has_header=1&csv_safe=0",".":"/api/dataconvert-key.php?c=.&text=&op=csv_to_json&has_header=1&csv_safe=0","/":"/api/dataconvert-key.php?c=%2F&text=&op=csv_to_json&has_header=1&csv_safe=0","~":"/api/dataconvert-key.php?c=~&text=&op=csv_to_json&has_header=1&csv_safe=0","!":"/api/dataconvert-key.php?c=%21&text=&op=csv_to_json&has_header=1&csv_safe=0","@":"/api/dataconvert-key.php?c=%40&text=&op=csv_to_json&has_header=1&csv_safe=0","#":"/api/dataconvert-key.php?c=%23&text=&op=csv_to_json&has_header=1&csv_safe=0","$":"/api/dataconvert-key.php?c=%24&text=&op=csv_to_json&has_header=1&csv_safe=0","%":"/api/dataconvert-key.php?c=%25&text=&op=csv_to_json&has_header=1&csv_safe=0","^":"/api/dataconvert-key.php?c=%5E&text=&op=csv_to_json&has_header=1&csv_safe=0","&":"/api/dataconvert-key.php?c=%26&text=&op=csv_to_json&has_header=1&csv_safe=0","*":"/api/dataconvert-key.php?c=%2A&text=&op=csv_to_json&has_header=1&csv_safe=0","(":"/api/dataconvert-key.php?c=%28&text=&op=csv_to_json&has_header=1&csv_safe=0",")":"/api/dataconvert-key.php?c=%29&text=&op=csv_to_json&has_header=1&csv_safe=0","_":"/api/dataconvert-key.php?c=_&text=&op=csv_to_json&has_header=1&csv_safe=0","+":"/api/dataconvert-key.php?c=%2B&text=&op=csv_to_json&has_header=1&csv_safe=0","{":"/api/dataconvert-key.php?c=%7B&text=&op=csv_to_json&has_header=1&csv_safe=0","}":"/api/dataconvert-key.php?c=%7D&text=&op=csv_to_json&has_header=1&csv_safe=0","|":"/api/dataconvert-key.php?c=%7C&text=&op=csv_to_json&has_header=1&csv_safe=0",":":"/api/dataconvert-key.php?c=%3A&text=&op=csv_to_json&has_header=1&csv_safe=0","\"":"/api/dataconvert-key.php?c=%22&text=&op=csv_to_json&has_header=1&csv_safe=0","<":"/api/dataconvert-key.php?c=%3C&text=&op=csv_to_json&has_header=1&csv_safe=0",">":"/api/dataconvert-key.php?c=%3E&text=&op=csv_to_json&has_header=1&csv_safe=0","?":"/api/dataconvert-key.php?c=%3F&text=&op=csv_to_json&has_header=1&csv_safe=0"},"actions":{"backspace":"/api/dataconvert-action.php?do=backspace&text=&op=csv_to_json&has_header=1&csv_safe=0","clear":"/api/dataconvert-action.php?do=clear&text=&op=csv_to_json&has_header=1&csv_safe=0","space":"/api/dataconvert-action.php?do=space&text=&op=csv_to_json&has_header=1&csv_safe=0","tab":"/api/dataconvert-action.php?do=tab&text=&op=csv_to_json&has_header=1&csv_safe=0","enter":"/api/dataconvert-action.php?do=enter&text=&op=csv_to_json&has_header=1&csv_safe=0","convert":"/api/dataconvert-action.php?do=convert&text=&op=csv_to_json&has_header=1&csv_safe=0&flow=f_wHWAmU890RXE_LKl5IBs&t=jt3eJeU4cqhGBwt7KZqr13V5"},"ops":{"csv_to_json":"/api/dataconvert-state.php?text=&op=csv_to_json&has_header=1&csv_safe=0","json_to_csv":"/api/dataconvert-state.php?text=&op=json_to_csv&has_header=1&csv_safe=0","csv_to_markdown":"/api/dataconvert-state.php?text=&op=csv_to_markdown&has_header=1&csv_safe=0","json_to_markdown":"/api/dataconvert-state.php?text=&op=json_to_markdown&has_header=1&csv_safe=0"}},"instructions":{"help":"/api/dataconvert-state.php","usage":"Follow one link from \"links.keys\" to append a character, one from \"links.actions\" to backspace/clear/convert, or one from \"links.ops\" to switch conversion (starting a fresh empty input). convert is a single-use, experimental, state-changing GET action requiring registration — GET this endpoint again (same flow) for a fresh token before converting again. A successful convert response includes a \"download\" object with a fetchable URL."},"see_also":{"experiment_writeup":"https://davesagenttools.com/experiment.php#dataconvert","get_url_endpoint":"https://davesagenttools.com/convert-table","post_endpoint":"https://davesagenttools.com/dataconvert-post.php","keyboard":"https://davesagenttools.com/dataconvert.php","register":"https://davesagenttools.com/register.php"}}