[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"api-page:xml-json-toolbox":3},{"status":4,"api":5,"seo":358},"success",{"blocked":6,"description":7,"about":8,"stats":9,"name":11,"title":12,"slug":13,"logo":14,"created_at":15,"agent":16,"user":28,"endpoint_groups":31,"faqs":310,"features":320,"periodic_plans":321,"payasyougo_plans":341},false,"The JSONBuddy API provides developer-friendly tools for working with JSON, JSON Schema, and XML. Validate JSON against one or more schemas, generate HTML schema documentation, format or minify JSON, apply RFC 6902 JSON Patch operations, and check, format, or verify XML—all through simple REST endpoints.","The JSONBuddy API is a collection of reliable, developer-focused services for processing, validating, and transforming JSON, JSON Schema, and XML. It helps applications automate common data-quality and document-processing tasks, including schema-based JSON validation, JSON formatting and patching, JSON Schema documentation generation, XML well-formedness checks, deterministic XML formatting, and restricted XML signature verification.\n\nDesigned for straightforward integration into development workflows, backend services, CI/CD pipelines, and data-processing systems, the API uses standard HTTP requests and returns structured, actionable results. Built-in request limits and rate limiting help provide predictable and secure operation.",{"score":10},"1.92","XML and JSON Toolbox","XML and JSON Toolbox API","xml-json-toolbox","https://cdn.jojapi.com/api/83d58406-d972-4382-8316-e8b0fcb8d368","2026-09-02 14:16:07",{"enabled":17,"closed":18,"request_enabled":17,"catalog_url":19,"discovery_url":20,"directory_url":21,"rails":22,"networks":25,"docs":27},true,null,"https://qmdbi.jojapi.net/_jojapi/agent/plans","https://qmdbi.jojapi.net/.well-known/x402","https://agents.jojapi.net/apis/xml-json-toolbox",[23,24],"x402","mpp",[26],"eip155:8453","https://docs.jojapi.com/consumers/agents",{"nick":29,"name":30,"verified":6,"website":18},"clemens-uhlenhut","Clemens Uhlenhut",[32,153,179,224],{"endpoints":33,"name":152,"description":40,"ungrouped":6,"open":6},[34,91,118],{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":35,"description":41,"method":42,"name":43,"url_path":44,"root_url":45,"parameters":46,"responses":62,"result_stats":18},[36],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Endpoint Request","endpoint-request","1","","Use this endpoint to turn compact JSON into readable, consistently indented JSON. Objects, arrays,\r\nand primitive JSON roots are supported. Requests up to 10 KiB (10,240 UTF-8 bytes) do not require an API key.\r\nLarger requests require a valid X-Api-Key header.","POST","Pretty-prints JSON input.","/api/jsonlinter/prettyprint","https://qmdbi.jojapi.net",{"url":47,"header":48,"post":55,"body":56,"path":61},[],[49],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},"X-JoJAPI-Key","You must log in to get API key","string","JoJ API Key","Please log in to get API key",[],[57],{"key":18,"example":58,"schema":59,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":18,"description":60},"{\"orderId\":\"ORD-2026-0042\",\"customer\":{\"name\":\"Ada Lovelace\",\"vip\":true},\"items\":[{\"sku\":\"JSONBUDDY-PRO\",\"quantity\":2,\"unitPrice\":49.95}],\"tags\":[\"api\",\"json\"]}","{}","''",[],[63,70,76,81,86],{"status":64,"status_code":65,"description":66,"schema":59,"examples":67,"example":58},"200",200,"OK",[68],{"name":69,"summary":40,"description":40,"example":58},"default",{"status":71,"status_code":72,"description":73,"schema":74,"examples":75,"example":40},"400",400,"Bad Request","{\"type\":\"string\"}",[],{"status":77,"status_code":78,"description":79,"schema":74,"examples":80,"example":40},"401",401,"Unauthorized",[],{"status":82,"status_code":83,"description":84,"schema":74,"examples":85,"example":40},"413",413,"Content Too Large",[],{"status":87,"status_code":88,"description":89,"schema":74,"examples":90,"example":40},"500",500,"Internal Server Error",[],{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":92,"description":94,"method":42,"name":95,"url_path":96,"root_url":45,"parameters":97,"responses":106,"result_stats":18},[93],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Use this endpoint to remove insignificant whitespace before storing or transmitting JSON. Objects, arrays,\r\nand primitive JSON roots are supported. Requests up to 10 KiB (10,240 UTF-8 bytes) do not require an API key.\r\nLarger requests require a valid X-Api-Key header.","Minifies JSON input.","/api/jsonlinter/minify",{"url":98,"header":99,"post":101,"body":102,"path":105},[],[100],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},[],[103],{"key":18,"example":104,"schema":59,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":18,"description":60},"{\"environment\":\"production\",\"features\":{\"validation\":true,\"schemaDocumentation\":true},\"retryDelays\":[1,5,15],\"metadata\":null}",[],[107,110,112,114,116],{"status":64,"status_code":65,"description":66,"schema":59,"examples":108,"example":104},[109],{"name":69,"summary":40,"description":40,"example":104},{"status":71,"status_code":72,"description":73,"schema":74,"examples":111,"example":40},[],{"status":77,"status_code":78,"description":79,"schema":74,"examples":113,"example":40},[],{"status":82,"status_code":83,"description":84,"schema":74,"examples":115,"example":40},[],{"status":87,"status_code":88,"description":89,"schema":74,"examples":117,"example":40},[],{"blocked":6,"hidden":6,"agent_price":119,"credits":18,"flexible_credits_description":18,"consumptions":120,"description":122,"method":42,"name":123,"url_path":124,"root_url":45,"parameters":125,"responses":134,"result_stats":18},0.05,[121],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"The request body must be a two-element array: [patchOperations, inputDocument]. The first element is an\r\nRFC 6902 operation array; the second is the document to update. Operations are applied in array order.\r\nRequests up to 10 KiB (10,240 UTF-8 bytes) do not require an API key. Larger requests require a valid X-Api-Key header.","Applies JSON Patch operations to a JSON document.","/api/jsonpatch/apply",{"url":126,"header":127,"post":129,"body":130,"path":133},[],[128],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},[],[131],{"key":18,"example":132,"schema":59,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":18,"description":60},"[[{\"op\":\"test\",\"path\":\"\\/status\",\"value\":\"pending\"},{\"op\":\"replace\",\"path\":\"\\/status\",\"value\":\"processed\"},{\"op\":\"add\",\"path\":\"\\/audit\",\"value\":{\"by\":\"api\",\"at\":\"2026-07-30T12:00:00Z\"}},{\"op\":\"remove\",\"path\":\"\\/temporaryNote\"}],{\"orderId\":\"ORD-2026-0042\",\"status\":\"pending\",\"temporaryNote\":\"remove after processing\"}]",[],[135,139,141,143,145,150],{"status":64,"status_code":65,"description":66,"schema":59,"examples":136,"example":138},[137],{"name":69,"summary":40,"description":40,"example":138},"{\"orderId\":\"ORD-2026-0042\",\"status\":\"processed\",\"audit\":{\"by\":\"api\",\"at\":\"2026-07-30T12:00:00Z\"}}",{"status":71,"status_code":72,"description":73,"schema":74,"examples":140,"example":40},[],{"status":77,"status_code":78,"description":79,"schema":74,"examples":142,"example":40},[],{"status":82,"status_code":83,"description":84,"schema":74,"examples":144,"example":40},[],{"status":146,"status_code":147,"description":148,"schema":74,"examples":149,"example":40},"422",422,"Unprocessable Content",[],{"status":87,"status_code":88,"description":89,"schema":74,"examples":151,"example":40},[],"JsonTools",{"endpoints":154,"name":178,"description":40,"ungrouped":6,"open":6},[155],{"blocked":6,"hidden":6,"agent_price":119,"credits":18,"flexible_credits_description":18,"consumptions":156,"description":159,"method":42,"name":160,"url_path":161,"root_url":45,"parameters":162,"responses":170,"result_stats":18},[157],{"name":37,"slug":38,"cost":158,"label":40,"avg":18},"2","This endpoint is rate-limited to 100 requests per minute.","Generates JSON Schema documentation as HTML from the provided JS","/schematools/generate-documentation",{"url":163,"header":164,"post":166,"body":167,"path":169},[],[165],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},[],[168],{"key":18,"example":59,"schema":59,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":18,"description":60},[],[171,173,176],{"status":64,"status_code":65,"description":66,"schema":18,"examples":172,"example":40},[],{"status":71,"status_code":72,"description":73,"schema":174,"examples":175,"example":40},"{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"valid\":{\"type\":\"boolean\"},\"json_pointer\":{\"type\":\"string\",\"nullable\":true},\"json_pointer_schema\":{\"type\":\"string\",\"nullable\":true},\"schema_key\":{\"type\":\"string\",\"nullable\":true},\"path_to_schema\":{\"type\":\"string\",\"nullable\":true},\"validation_step\":{\"type\":\"integer\",\"format\":\"int32\"},\"results\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"type\":{\"type\":\"string\",\"nullable\":true},\"message\":{\"type\":\"string\",\"nullable\":true}},\"additionalProperties\":false},\"nullable\":true}},\"additionalProperties\":false}}",[],{"status":77,"status_code":78,"description":79,"schema":74,"examples":177,"example":40},[],"schematools",{"endpoints":180,"name":223,"description":40,"ungrouped":6,"open":6},[181,203],{"blocked":6,"hidden":6,"agent_price":119,"credits":18,"flexible_credits_description":18,"consumptions":182,"description":184,"method":42,"name":185,"url_path":186,"root_url":45,"parameters":187,"responses":196,"result_stats":18},[183],{"name":37,"slug":38,"cost":158,"label":40,"avg":18},"A schema pool can be provided. This endpoint is rate-limited to 100 requests per minute.","Validates JSON data against a schema.","/validator/validate",{"url":188,"header":189,"post":191,"body":192,"path":195},[],[190],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},[],[193],{"key":18,"example":59,"schema":194,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":18,"description":60},"{\"type\":\"object\",\"properties\":{\"data\":{\"nullable\":true},\"schema\":{\"type\":\"array\",\"items\":{},\"nullable\":true}},\"additionalProperties\":false}",[],[197,199,201],{"status":64,"status_code":65,"description":66,"schema":18,"examples":198,"example":40},[],{"status":71,"status_code":72,"description":73,"schema":174,"examples":200,"example":40},[],{"status":77,"status_code":78,"description":79,"schema":74,"examples":202,"example":40},[],{"blocked":6,"hidden":6,"agent_price":119,"credits":18,"flexible_credits_description":18,"consumptions":204,"description":159,"method":42,"name":185,"url_path":206,"root_url":45,"parameters":207,"responses":216,"result_stats":18},[205],{"name":37,"slug":38,"cost":158,"label":40,"avg":18},"/validator/validate-simple",{"url":208,"header":209,"post":211,"body":212,"path":215},[],[210],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},[],[213],{"key":18,"example":59,"schema":214,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":18,"description":60},"{\"type\":\"object\",\"properties\":{\"data\":{\"type\":\"string\",\"nullable\":true},\"schema\":{\"type\":\"string\",\"nullable\":true}},\"additionalProperties\":false}",[],[217,219,221],{"status":64,"status_code":65,"description":66,"schema":18,"examples":218,"example":40},[],{"status":71,"status_code":72,"description":73,"schema":174,"examples":220,"example":40},[],{"status":77,"status_code":78,"description":79,"schema":74,"examples":222,"example":40},[],"validator",{"endpoints":225,"name":309,"description":40,"ungrouped":6,"open":6},[226,256,282],{"blocked":6,"hidden":6,"agent_price":227,"credits":18,"flexible_credits_description":18,"consumptions":228,"description":230,"method":42,"name":231,"url_path":232,"root_url":45,"parameters":233,"responses":240,"result_stats":18},0.02,[229],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Malformed XML is a completed check and returns HTTP 200 with `wellFormed: false`.","Checks secure XML well-formedness and returns native document me","/api/xml/check",{"url":234,"header":235,"post":237,"body":238,"path":239},[],[236],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},[],[],[],[241,243,245,247,252,254],{"status":64,"status_code":65,"description":66,"schema":59,"examples":242,"example":40},[],{"status":71,"status_code":72,"description":73,"schema":59,"examples":244,"example":40},[],{"status":82,"status_code":83,"description":84,"schema":59,"examples":246,"example":40},[],{"status":248,"status_code":249,"description":250,"schema":59,"examples":251,"example":40},"415",415,"Unsupported Media Type",[],{"status":146,"status_code":147,"description":148,"schema":59,"examples":253,"example":40},[],{"status":87,"status_code":88,"description":89,"schema":59,"examples":255,"example":40},[],{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":257,"description":259,"method":42,"name":260,"url_path":261,"root_url":45,"parameters":262,"responses":269,"result_stats":18},[258],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Namespace-correct signed XML is refused because formatting could invalidate its signature.","Formats XML deterministically as UTF-8 without changing the nati","/api/xml/format",{"url":263,"header":264,"post":266,"body":267,"path":268},[],[265],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},[],[],[],[270,272,274,276,278,280],{"status":64,"status_code":65,"description":66,"schema":74,"examples":271,"example":40},[],{"status":71,"status_code":72,"description":73,"schema":59,"examples":273,"example":40},[],{"status":82,"status_code":83,"description":84,"schema":59,"examples":275,"example":40},[],{"status":248,"status_code":249,"description":250,"schema":59,"examples":277,"example":40},[],{"status":146,"status_code":147,"description":148,"schema":59,"examples":279,"example":40},[],{"status":87,"status_code":88,"description":89,"schema":59,"examples":281,"example":40},[],{"blocked":6,"hidden":6,"agent_price":283,"credits":18,"flexible_credits_description":18,"consumptions":284,"description":286,"method":42,"name":287,"url_path":288,"root_url":45,"parameters":289,"responses":296,"result_stats":18},0.1,[285],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"The safe v2 profile accepts one whole-document enveloped signature whose Reference URI is exactly empty\r\nor `#xpointer(/)`. The transforms must be enveloped-signature alone, or enveloped-signature followed\r\nby Canonical XML 1.0 or Exclusive Canonical XML 1.0, without comments. The one-transform form uses\r\nCanonical XML 1.0 explicitly. Other fragments, XPointer expressions, transforms, and external references\r\nare unsupported and are never resolved or executed.\r\n            \r\nA `valid` result establishes reference-digest and RSA signature integrity only. Certificate trust,\r\nsigner identity, and certificate-chain validity are not evaluated. Invalid, unsupported, and no-signature\r\nresults are completed verification results and return HTTP 200. An unsupported result includes a stable\r\ndiagnostic code and a safe, user-facing explanation of the refused profile feature.","Verifies the restricted xmlvalidator-safe-rsa-sha256-v2 XML sign","/api/xml/verify",{"url":290,"header":291,"post":293,"body":294,"path":295},[],[292],{"key":50,"is_auth":17,"example":51,"example_disabled":17,"example_type":52,"name":53,"description":51,"required":17,"always_error":54},[],[],[],[297,299,301,303,305,307],{"status":64,"status_code":65,"description":66,"schema":59,"examples":298,"example":40},[],{"status":71,"status_code":72,"description":73,"schema":59,"examples":300,"example":40},[],{"status":82,"status_code":83,"description":84,"schema":59,"examples":302,"example":40},[],{"status":248,"status_code":249,"description":250,"schema":59,"examples":304,"example":40},[],{"status":146,"status_code":147,"description":148,"schema":59,"examples":306,"example":40},[],{"status":87,"status_code":88,"description":89,"schema":59,"examples":308,"example":40},[],"XmlTools",[311,314,317],{"question":312,"answer":313},"What data formats does the API support?","The API supports JSON, JSON Schema, and XML. Its capabilities include validation, formatting, transformation, documentation generation, and selected integrity checks.",{"question":315,"answer":316},"What happens when validation fails?","The API returns structured diagnostics that help identify the problem and its location. This makes validation results suitable for both automated processing and user-facing error reporting.",{"question":318,"answer":319},"Where can I use the API?","The API can be integrated into web applications, backend services, data pipelines, automated testing, and CI/CD workflows.",[],[322],{"type":323,"slug":324,"blocked":6,"period":325,"currency":326,"pricing":327,"rate_limit":332,"objects":335,"name":339,"display_name":339,"features":340},"periodic","919jnvx6j84gj4ysqhemr2up","1 MONTH","usd",{"price":328,"credits":329,"past_due_timeout_num":330,"past_due_timeout_type":331},10,0,3,"DAY",{"max_requests":333,"time_window":334},2,1,[336],{"id":337,"name":37,"slug":38,"quota":338,"tiers":18},"n6adfdb6c",100,"Basic Fixed",[],[342],{"type":343,"slug":344,"blocked":6,"period":325,"currency":326,"pricing":345,"rate_limit":346,"objects":347,"name":356,"display_name":356,"features":357},"payasyougo","2lu9vxch672lch70l6lkem6h",[],{"max_requests":328,"time_window":334},[348],{"id":337,"name":37,"slug":38,"quota":18,"tiers":349},[350,352],{"start":329,"unit_price":227,"start_text":351},"0",{"start":353,"unit_price":354,"start_text":355},1000,0.015,"1K","Basic Per-Usage",[],{"canonical":359,"page_title":360,"meta":361},"https://jojapi.com/hub/api/xml-json-toolbox","XML and JSON Toolbox API Documentation & Playground - JoJ API",{"description":7,"keywords":362},"API,API Documentation,API Playground,Plans & Pricing,XML and JSON Toolbox,clemens-uhlenhut"]