{
  "x402Version": 2,
  "id": 3630,
  "slug": "3630",
  "resource": "https://hash-hmac.underscoredone.com/hash",
  "description": "Give this API any text or binary data and it returns its fingerprint under whichever hash algorithms you choose - SHA-256, SHA-512, MD5, BLAKE2, CRC32 and more. It also signs data with a secret key (HMAC) and safely verifies whether an incoming signature matches, using a timing-safe comparison. Language models cannot hash: they emit a string of the right length and character set that is simply wrong, so every webhook check built on a guessed hash is silently broken.",
  "type": "http",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "10000",
      "maxTimeoutSeconds": 300
    },
    {
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "payTo": "8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b",
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "amount": "10000",
      "maxTimeoutSeconds": 300
    }
  ],
  "outputSchema": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "algorithms": [
              "sha256",
              "sha512",
              "crc32"
            ],
            "hmac": {
              "algorithm": "sha256",
              "expected_signature": "edddd7a6a42a411ab35b993d690cc7bd5d3be3d9262f66fef16ac2be10e0539a",
              "key": "whsec_test_secret_key_123",
              "mode": "verify"
            },
            "input": "{\"order_id\":\"A-1029\",\"amount\":4200}",
            "input_encoding": "utf-8",
            "output_encoding": "hex"
          },
          "bodyType": "json",
          "method": "POST",
          "type": "http"
        },
        "output": {
          "example": {
            "api_version": "1.0.0",
            "digests": {
              "crc32": "74c679bb",
              "sha256": "aa27c1f5aeb13292cb74153461b1eb3193efe4501c109a99103d304657798cf6",
              "sha512": "f9b133b06a4b7309392429f15108af870c073288f4297b85dba0ebb907f26c71a808abbe1d197f67ad4b7a1ab83507b1ac1774aa0a4295919e7b9697b395be07"
            },
            "hmac": {
              "algorithm": "sha256",
              "computed_signature": "edddd7a6a42a411ab35b993d690cc7bd5d3be3d9262f66fef16ac2be10e0539a",
              "matches": true,
              "mode": "verify"
            },
            "input_bytes": 35
          },
          "type": "json"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "body": {
                "additionalProperties": false,
                "properties": {
                  "algorithms": {
                    "description": "Which fingerprint methods to use. Choose any of: md5, sha1, sha224, sha256, sha384, sha512, sha3_256, sha3_512, blake2b, blake2s, crc32, adler32. You may list several at once.",
                    "type": "array"
                  },
                  "hmac": {
                    "description": "Optional. Include this block to sign data or verify a signature. Contains: mode ('sign' or 'verify'), algorithm (md5, sha1, sha256, or sha512), key (your full secret key as a string), and expected_signature (only needed when mode is 'verify').",
                    "type": "object"
                  },
                  "input": {
                    "description": "The text or data you want to hash. For binary data, base64-encode it first and set input_encoding to 'base64'.",
                    "type": "string"
                  },
                  "input_encoding": {
                    "description": "How the input is encoded. Use 'utf-8' for normal text (default) or 'base64' for binary data.",
                    "type": "string"
                  },
                  "output_encoding": {
                    "description": "How to display the resulting fingerprints. Choose 'hex' (default, lowercase letters and numbers), 'base64', or 'base64url' (safe for URLs).",
                    "type": "string"
                  }
                },
                "required": [
                  "input",
                  "algorithms"
                ],
                "type": "object"
              },
              "bodyType": {
                "enum": [
                  "json",
                  "form-data",
                  "text"
                ],
                "type": "string"
              },
              "method": {
                "enum": [
                  "POST",
                  "PUT",
                  "PATCH"
                ],
                "type": "string"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method",
              "bodyType",
              "body"
            ],
            "type": "object"
          },
          "output": {
            "properties": {
              "example": {
                "properties": {
                  "api_version": {
                    "type": "string"
                  },
                  "digests": {
                    "additionalProperties": true,
                    "type": "object"
                  },
                  "hmac": {
                    "additionalProperties": true,
                    "type": "object"
                  },
                  "input_bytes": {
                    "type": "integer"
                  }
                },
                "required": [
                  "api_version",
                  "input_bytes",
                  "digests",
                  "hmac"
                ],
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      }
    }
  },
  "tags": [
    "bazaar"
  ],
  "sourceHost": "hash-hmac.underscoredone.com",
  "lastUpdated": "2026-09-14T19:48:33.555Z",
  "quality": {
    "calls30d": 3,
    "uniquePayers30d": 3,
    "lastCalledAt": "2026-09-14T19:48:33.327Z"
  },
  "liveness": {},
  "verified": false,
  "featured": false,
  "provider": {
    "host": "hash-hmac.underscoredone.com",
    "manifest_name": "hash-hmac.underscoredone.com",
    "source": "cdp-mirror",
    "source_manifest_url": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources",
    "submitted_at": "2026-09-18T22:00:31.484Z"
  }
}