{"uid":"cap_S5_1FVLPfvkEYvIh7UkCA","slug":"openverbs-format-converter-9b99f9c7","name":"OpenVerbs Format Converter","description":"Transcode a document between json, json5, jsonc, yaml, xml, csv, tsv, toml, ndjson, ini, env, properties, plist and querystring. Any source converts to any target through a JSON hub. Malformed input or a target that cannot represent the structure is rejected before payment.","url":"https://format.openverbs.com/v1/convert","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"type":"object","required":["from","to","data"],"properties":{"to":{"enum":["json","json5","jsonc","yaml","xml","csv","tsv","toml","ndjson","ini","env","properties","plist","querystring"],"type":"string","description":"Target format to convert to."},"data":{"type":"string","maxLength":1000000,"minLength":1,"description":"The document to convert, as a string in the `from` format."},"from":{"enum":["json","json5","jsonc","yaml","xml","csv","tsv","toml","ndjson","ini","env","properties","plist","querystring"],"type":"string","description":"Source format of `data`."},"options":{"type":"object","properties":{"header":{"type":"boolean","description":"For csv/tsv, use the first row as a header. Default true."},"indent":{"type":"integer","maximum":10,"minimum":0,"description":"Indent width for pretty json/xml. Default 2."},"pretty":{"type":"boolean","description":"Pretty-print json/xml output. Default true."},"rootName":{"type":"string","maxLength":64,"minLength":1,"description":"Root element name when wrapping a non-object value into xml. Default \"root\"."}},"additionalProperties":false}},"additionalProperties":false},"type":{"type":"string","const":"http"},"method":{"enum":["POST"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.004","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.004/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.004","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.004","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_ck7KSQgE5i2YZiNsqv7mr","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.004","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Converts structured documents between 14 formats (JSON, YAML, XML, CSV, TOML, and more) using JSON as an intermediate hub","exampleAgentPrompt":"Convert this YAML config string to TOML: the document is '---\\nname: myapp\\nport: 8080\\ndebug: true', pretty-print the output with 2-space indentation.","exampleUseCases":[{"title":"Config file format migration","prompt":"I have this JSON config file and need it as TOML so I can use it with a Rust project — here's the content: '{\"database\":{\"host\":\"localhost\",\"port\":5432},\"debug\":false}'. Can you convert it to TOML for me?"},{"title":"CSV data to structured JSON","prompt":"Turn this TSV data into JSON for me — the first row is the header, and the content is: 'name\\tage\\tcity\\nAlice\\t30\\tNew York\\nBob\\t25\\tBoston'"},{"title":"API response reformatting for legacy system","prompt":"I need to convert this JSON payload to XML so a legacy system can consume it — here's the JSON: '{\"order\":{\"id\":\"123\",\"items\":[\"widget\",\"gadget\"],\"total\":49.99}}', wrap it in a root element called 'payload' and use 2-space indentation."}],"resultDescription":"A JSON response containing the converted document as a string in the requested target format. The output reflects any specified options like pretty-printing, indentation width, CSV header treatment, or custom XML root element name. Malformed input or structurally incompatible source-to-target combinations are rejected before any payment is charged.","failureModes":["Malformed or unparseable source document rejected with error before payment","Source-to-target structural mismatch (e.g. nested object to CSV) rejected with error","Unsupported format enum value rejected by schema validation","Document exceeds 1,000,000 character limit","Missing required fields (from, to, data) cause validation error","XML output attempted on data with non-string keys incompatible with XML element names"],"whenToPreferThis":"Choose this endpoint when you need reliable, bidirectional conversion between any of 14 popular structured data formats in a single call, without standing up your own parsing pipeline. It is especially useful for agent workflows that receive data in one format (e.g. YAML from a config file) and need it in another (e.g. JSON for downstream API consumption). The pay-per-call x402 micropayment model suits sporadic or low-volume conversion tasks where running a dedicated service is overkill. Prefer this over DIY parsing when format correctness and rejection of malformed input before charging are important.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T18:41:21.274Z","isFirstParty":false}