{"openapi":"3.1.0","info":{"title":"XML API","version":"1.0.0","description":"A fast, fully-local XML toolkit: convert XML to JSON and JSON to XML with configurable attribute handling, validate XML well-formedness with line and column error details, and pretty-print XML while preserving element order. Every endpoint accepts input via the query string or the request body, up to 2 MB. Pure server-side compute, no third-party upstream, so responses are instant and always available. Ideal for system integrations, SOAP and legacy interop, RSS and sitemap processing, config tooling and data pipelines.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/xml-api","description":"oanor gateway"}],"tags":[{"name":"XML"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/format":{"get":{"operationId":"get_v1_format","tags":["XML"],"summary":"Pretty-print XML","description":"","parameters":[{"name":"xml","in":"query","required":true,"description":"XML markup","schema":{"type":"string"},"example":"<a><b>1</b><c x=\"2\">3</c></a>"},{"name":"indent","in":"query","required":false,"description":"Indent 0-8 (default 2)","schema":{"type":"string"},"example":"2"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"xml":"<a>\n  <b>1</b>\n  <c x=\"2\">3</c>\n</a>"},"meta":{"timestamp":"2026-05-30T10:10:57.251Z","request_id":"b7275c2a-1e07-42c4-9dd9-f01f7750f368"},"status":"ok","message":"OK","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/to-json":{"get":{"operationId":"get_v1_to_json","tags":["XML"],"summary":"XML to JSON","description":"","parameters":[{"name":"xml","in":"query","required":true,"description":"XML markup","schema":{"type":"string"},"example":"<note><to>Tove</to><body>Hi</body></note>"},{"name":"attributes","in":"query","required":false,"description":"Include attributes (default true)","schema":{"type":"string"},"example":"true"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"json":{"note":{"to":"Tove","body":"Hi"}}},"meta":{"timestamp":"2026-05-30T10:10:57.327Z","request_id":"5249a990-00ba-43e8-a2e1-64f4ba2bea54"},"status":"ok","message":"OK","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/to-xml":{"get":{"operationId":"get_v1_to_xml","tags":["XML"],"summary":"JSON to XML","description":"","parameters":[{"name":"json","in":"query","required":true,"description":"JSON object","schema":{"type":"string"},"example":"{\"note\":{\"to\":\"Tove\",\"body\":\"Hi\"}}"},{"name":"indent","in":"query","required":false,"description":"Indent 0-8 (default 2)","schema":{"type":"string"},"example":"2"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"xml":"<note>\n  <to>Tove</to>\n  <body>Hi</body>\n</note>"},"meta":{"timestamp":"2026-05-30T10:10:57.400Z","request_id":"e23c5560-afb9-4c4b-be3f-b155fa98c800"},"status":"ok","message":"OK","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/validate":{"get":{"operationId":"get_v1_validate","tags":["XML"],"summary":"Validate XML","description":"","parameters":[{"name":"xml","in":"query","required":true,"description":"XML markup","schema":{"type":"string"},"example":"<a><b/></a>"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"valid":true},"meta":{"timestamp":"2026-05-30T10:10:57.481Z","request_id":"639c1526-78ae-4058-8136-c1d898c4bc32"},"status":"ok","message":"OK","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":13000,"rps_limit":2,"hard_limit":true},{"slug":"basic","name":"Basic","price_cents_month":300,"monthly_call_quota":280000,"rps_limit":12,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1300,"monthly_call_quota":1500000,"rps_limit":40,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":3400,"monthly_call_quota":7500000,"rps_limit":120,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/xml-api"}