{
  "x402Version": 2,
  "id": 12691,
  "slug": "12691",
  "resource": "https://hash.openverbs.com/v1/hmac",
  "description": "Compute a keyed HMAC of some data with a secret key — the standard way to sign and verify webhooks (Stripe, GitHub, etc.) and API requests. Data and key may each be utf8/hex/base64/base64url; the tag is returned as hex/base64/base64url.",
  "type": "http",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "2000",
      "maxTimeoutSeconds": 300
    }
  ],
  "outputSchema": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "algorithm": "sha256",
            "data": "example",
            "inputEncoding": "utf8",
            "key": "example",
            "keyEncoding": "utf8"
          },
          "bodyType": "json",
          "method": "POST",
          "type": "http"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "body": {
                "additionalProperties": false,
                "properties": {
                  "algorithm": {
                    "description": "Digest algorithm, one of sha256, sha512, sha384, sha224, sha1, sha3-256, sha3-384, sha3-512, md5, ripemd160, blake2b512, blake2s256.",
                    "enum": [
                      "sha256",
                      "sha512",
                      "sha384",
                      "sha224",
                      "sha1",
                      "sha3-256",
                      "sha3-384",
                      "sha3-512",
                      "md5",
                      "ripemd160",
                      "blake2b512",
                      "blake2s256"
                    ],
                    "type": "string"
                  },
                  "data": {
                    "description": "The data to authenticate, in `inputEncoding`.",
                    "maxLength": 5000000,
                    "type": "string"
                  },
                  "inputEncoding": {
                    "description": "How to interpret the text as bytes (utf8, hex, base64, base64url). Default utf8.",
                    "enum": [
                      "utf8",
                      "hex",
                      "base64",
                      "base64url"
                    ],
                    "type": "string"
                  },
                  "key": {
                    "description": "The secret key, in `keyEncoding`.",
                    "maxLength": 16384,
                    "minLength": 1,
                    "type": "string"
                  },
                  "keyEncoding": {
                    "description": "How to interpret the key as bytes (utf8, hex, base64, base64url). Default utf8.",
                    "enum": [
                      "utf8",
                      "hex",
                      "base64",
                      "base64url"
                    ],
                    "type": "string"
                  },
                  "outputEncoding": {
                    "description": "How to render the digest (hex, base64, base64url). Default hex.",
                    "enum": [
                      "hex",
                      "base64",
                      "base64url"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "data",
                  "key",
                  "algorithm"
                ],
                "type": "object"
              },
              "bodyType": {
                "enum": [
                  "json",
                  "form-data",
                  "text"
                ],
                "type": "string"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method",
              "bodyType",
              "body"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      }
    }
  },
  "tags": [
    "bazaar"
  ],
  "sourceHost": "hash.openverbs.com",
  "lastUpdated": "2026-09-14T19:59:55.561Z",
  "quality": {
    "calls30d": 4,
    "uniquePayers30d": 2,
    "lastCalledAt": "2026-09-14T19:59:55.251Z"
  },
  "liveness": {},
  "verified": false,
  "featured": false,
  "provider": {
    "host": "hash.openverbs.com",
    "manifest_name": "hash.openverbs.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"
  }
}