{"uid":"cap_MhNMw-T1mSTx-81PMYNuE","slug":"pennyrail-sort-json-keys-7b807af5","name":"PennyRail Sort JSON Keys","description":"Machine-readable settlement service","url":"https://pennyrail.vercel.app/api/p/nano/json.sort-keys--sort-json-keys","method":"POST","headers":{},"bodySchema":{"type":"object","required":["input"],"properties":{"input":{"type":"object"}}},"responseSchema":{"type":"object","additionalProperties":true},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001","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.001/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_rVGinbW3qnidR7yUzJbXE","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Sorts all keys in a JSON object alphabetically, returning a new object with keys in canonical sorted order","exampleAgentPrompt":"Sort all the keys in this JSON object alphabetically: {\"zebra\": 1, \"apple\": 2, \"mango\": 3} — I need a canonically ordered version.","exampleUseCases":[{"title":"Canonical JSON before cryptographic signing","prompt":"Before I sign this JSON payload, sort all its keys alphabetically so the serialization is deterministic: {\"userId\":\"abc123\",\"amount\":50,\"currency\":\"USD\",\"timestamp\":1700000000}."},{"title":"Normalizing API response for diffing","prompt":"I have two API responses that should be identical but the key order differs — sort the keys of this one alphabetically so I can do a clean comparison: {\"status\":\"ok\",\"data\":{\"name\":\"Alice\",\"id\":42}}."},{"title":"Consistent config file key ordering","prompt":"Alphabetize all the keys in my config JSON so it's easier to read and version-control diffs are cleaner: {\"timeout\":30,\"retries\":3,\"host\":\"localhost\",\"port\":8080}."}],"resultDescription":"A JSON object identical in values to the input but with all top-level (and potentially nested) keys sorted in ascending alphabetical order, enabling deterministic serialization and canonical comparison.","failureModes":["Input is not a valid JSON object — returns an error or empty response","Input object is empty — returns an empty object","Deeply nested keys may or may not be recursively sorted depending on implementation","Network or payment failure returns a 402 or 5xx status","Malformed input schema (missing 'input' wrapper) causes a 400 error"],"whenToPreferThis":"Choose this endpoint when you need a quick, pay-per-call JSON key sorting operation without standing up your own infrastructure — ideal for agents that occasionally need canonical JSON ordering for hashing, signing, diffing, or config normalization, and want a hosted microservice rather than inline code.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T06:42:19.282Z","isFirstParty":false}