{
  "title": "Sort JSON keys",
  "human_url": "https://happytails.ai/en/developer-tools/json-key-sorter/",
  "agent_url": "https://happytails.ai/agents/en/developer-tools/json-key-sorter/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/developer-tools/json-key-sorter.md",
  "content": "Sort JSON keys\nPut object keys in a consistent order without rearranging arrays.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nHow to use Sort JSON keys\nPaste valid JSON. Keys in every nested object are sorted with a case-sensitive character comparison. Copy or download the formatted result.\nThe outer object orders a before z; the nested object orders b before y. Array items keep their original order. Integer-like keys follow JavaScript numeric key ordering.\nUseful next steps\nJSON formatter\nJSON diff\nRemove duplicates from a JSON array\nHow to use it\nPaste valid JSON. Keys in every nested object are sorted with a case-sensitive character comparison. Copy or download the formatted result.\nTry a small example\nThe outer object orders a before z; the nested object orders b before y. Array items keep their original order. Integer-like keys follow JavaScript numeric key ordering.\nWhat to know\nSorts every object’s keys with a case-sensitive character comparison, preserving array order and values. JavaScript serializes integer-like keys numerically. Unsafe unquoted integers are rejected.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "JSON formatter",
      "url": "https://happytails.ai/en/developer-tools/json-formatter/"
    },
    {
      "name": "JSON diff",
      "url": "https://happytails.ai/en/developer-tools/json-diff/"
    },
    {
      "name": "Remove duplicates from a JSON array",
      "url": "https://happytails.ai/en/developer-tools/json-array-unique/"
    }
  ],
  "tool": {
    "id": "json-key-sorter",
    "category": "developer-tools",
    "built": true,
    "requirements": "Sorts every object’s keys with a case-sensitive character comparison, preserving array order and values. JavaScript serializes integer-like keys numerically. Unsafe unquoted integers are rejected.",
    "implementation": {
      "fields": [],
      "live": true,
      "note": "Sorts every object’s keys with a case-sensitive character comparison, preserving array order and values. JavaScript serializes integer-like keys numerically. Unsafe unquoted integers are rejected.",
      "experience": {
        "automatic": true,
        "single": false,
        "inputMaxLength": 1000000,
        "inputMode": "text",
        "label": "JSON",
        "placeholder": "{\"name\":\"Ada\",\"count\":2}",
        "help": "Use double-quoted property names and valid JSON values. Results update as you type. Up to 1,000,000 characters.",
        "action": null
      },
      "mode": "automatic",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Sort JSON keys\n\n- Human page: https://happytails.ai/en/developer-tools/json-key-sorter/\n- Markdown: https://happytails.ai/en/developer-tools/json-key-sorter.md\n- Structured JSON: https://happytails.ai/agents/en/developer-tools/json-key-sorter/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `json-key-sorter` |\n| Category | developer-tools |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Automatic updates after valid input or file selection. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nSorts every object’s keys with a case-sensitive character comparison, preserving array order and values. JavaScript serializes integer-like keys numerically. Unsafe unquoted integers are rejected.\n\n### Inputs and settings\n\nText input: JSON.\n\nExample or placeholder shown in the interface (not a validated fixture):\n\n```text\n{\"name\":\"Ada\",\"count\":2}\n```\n\nUse double-quoted property names and valid JSON values. Results update as you type. Up to 1,000,000 characters.\n\nNo additional settings are declared for this tool.\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nSorts every object’s keys with a case-sensitive character comparison, preserving array order and values. JavaScript serializes integer-like keys numerically. Unsafe unquoted integers are rejected.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"json-key-sorter\",\n  \"category\": \"developer-tools\",\n  \"built\": true,\n  \"requirements\": \"Sorts every object’s keys with a case-sensitive character comparison, preserving array order and values. JavaScript serializes integer-like keys numerically. Unsafe unquoted integers are rejected.\",\n  \"implementation\": {\n    \"fields\": [],\n    \"live\": true,\n    \"note\": \"Sorts every object’s keys with a case-sensitive character comparison, preserving array order and values. JavaScript serializes integer-like keys numerically. Unsafe unquoted integers are rejected.\",\n    \"experience\": {\n      \"automatic\": true,\n      \"single\": false,\n      \"inputMaxLength\": 1000000,\n      \"inputMode\": \"text\",\n      \"label\": \"JSON\",\n      \"placeholder\": \"{\\\"name\\\":\\\"Ada\\\",\\\"count\\\":2}\",\n      \"help\": \"Use double-quoted property names and valid JSON values. Results update as you type. Up to 1,000,000 characters.\",\n      \"action\": null\n    },\n    \"mode\": \"automatic\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nPut object keys in a consistent order without rearranging arrays.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n### How to use Sort JSON keys\n\n1. Paste valid JSON. Keys in every nested object are sorted with a case-sensitive character comparison. Copy or download the formatted result.\n2. The outer object orders a before z; the nested object orders b before y. Array items keep their original order. Integer-like keys follow JavaScript numeric key ordering.\n\n## Useful next steps\n\n- [JSON formatter](https://happytails.ai/en/developer-tools/json-formatter/) ([Markdown](https://happytails.ai/en/developer-tools/json-formatter.md))\n\n- [JSON diff](https://happytails.ai/en/developer-tools/json-diff/) ([Markdown](https://happytails.ai/en/developer-tools/json-diff.md))\n\n- [Remove duplicates from a JSON array](https://happytails.ai/en/developer-tools/json-array-unique/) ([Markdown](https://happytails.ai/en/developer-tools/json-array-unique.md))\n\n## How to use it\n\nPaste valid JSON. Keys in every nested object are sorted with a case-sensitive character comparison. Copy or download the formatted result.\n\n### Try a small example\n\nThe outer object orders a before z; the nested object orders b before y. Array items keep their original order. Integer-like keys follow JavaScript numeric key ordering.\n\n### What to know\n\nSorts every object’s keys with a case-sensitive character comparison, preserving array order and values. JavaScript serializes integer-like keys numerically. Unsafe unquoted integers are rejected.\n"
}