561 Group Market

WHATWG MIME Type Parsing

Parse Content-Type using the WHATWG MIME algorithm. Return normalized type/subtype, essence, ordered parameters and serialized header. Forgiving browser parsing keeps the first duplicate and skips malformed parameters; not strict RFC validation, IANA checking, content sniffing or authentication. Limit 4096 UTF-8 input/output bytes and 32 retained parameters. Refuse unparseable essence or excess bounds before payment. No network or filesystem I/O.

Price
from $0.0012 USDC per request (starting price; the 402 response quotes the exact amount for your input)
Network
Base mainnet, eip155:8453, settled in USDC through the Coinbase CDP facilitator
Method and URL
POST https://market.561.group/v1/data/mime-type-parse
Response type
application/json
Seller
Causeway Services (561 Group)

Input contract

Input that fails this contract is refused with a 4xx status before any payment is requested.

{
  "maxBytes": 26624,
  "bodySchema": {
    "type": "object",
    "additionalProperties": false,
    "required": [
      "mediaType"
    ],
    "properties": {
      "mediaType": {
        "type": "string",
        "maxLength": 4096
      }
    }
  }
}

Example request

{
  "method": "POST",
  "url": "https://market.561.group/v1/data/mime-type-parse",
  "headers": {
    "accept": "application/json",
    "content-type": "application/json"
  },
  "body": {
    "mediaType": "Text/HTML; Charset=\"UTF-8\"; charset=gbk; boundary=\"a;b\""
  }
}

Output

{
  "schema": {
    "type": "object",
    "additionalProperties": false,
    "required": [
      "type",
      "subtype",
      "essence",
      "parameters",
      "serialized"
    ],
    "properties": {
      "type": {
        "type": "string"
      },
      "subtype": {
        "type": "string"
      },
      "essence": {
        "type": "string"
      },
      "parameters": {
        "type": "array",
        "maxItems": 32,
        "items": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "name",
            "value"
          ],
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 4096
            },
            "value": {
              "type": "string",
              "maxLength": 4096
            }
          }
        }
      },
      "serialized": {
        "type": "string",
        "maxLength": 4096
      }
    }
  },
  "example": {
    "type": "text",
    "subtype": "html",
    "essence": "text/html",
    "parameters": [
      {
        "name": "charset",
        "value": "UTF-8"
      },
      {
        "name": "boundary",
        "value": "a;b"
      }
    ],
    "serialized": "text/html;charset=UTF-8;boundary=\"a;b\""
  }
}

How to buy with x402

  1. Send the request without payment. The server answers 402 Payment Required with a base64 JSON PAYMENT-REQUIRED header holding the amount, asset, network and payee.
  2. Have your wallet sign an EIP-3009 transferWithAuthorization for exactly those terms (an x402 client library does this for you).
  3. Repeat the identical request with the signed payload in the PAYMENT-SIGNATURE header.
  4. The server verifies, runs the operation, settles, and returns 200 with the result and a PAYMENT-RESPONSE header carrying the settlement receipt.

Read the price without paying

curl --include --request POST --header 'accept: application/json' --header 'content-type: application/json' --data-raw '{"mediaType":"Text/HTML; Charset=\"UTF-8\"; charset=gbk; boundary=\"a;b\""}' --url 'https://market.561.group/v1/data/mime-type-parse'

This request authorizes nothing; it returns the live payment terms. Read the full explanation of x402.

Machine-readable