Catalog/util-data-uri

Utilities

Encode/decode/parse data: URIs API

Encode text or a base64 payload into an RFC 2397 data: URI (chosen MIME type, charset, base64 vs percent-encoding), decode an existing data: URI back to its payload, or parse one into its structural parts (mediaType, parameters, base64 flag, decoded length). Handles both base64 and URL-encoded data URIs via an 'op' of encode|decode|parse. Answers 'turn this text into a data URI','decode this data: URL','what MIME type is this data URI'.

Price$0.01per request
MethodPOST
Route/v1/util/util-data-uri
StatusLive
MIME typeapplication/json
Rate limit120/minute
CacheNo cache
utildata-urirfc2397base64encodedecodeparsemime
API URLhttps://x402.hexl.dev/v1/util/util-data-uri
Integration docs
Example request
{
  "op": "encode",
  "data": "Hello, World!",
  "mediaType": "text/plain",
  "base64": true
}
Example response
{
  "op": "encode",
  "dataUri": "data:text/plain;base64,SGVsbG8sIFdvcmxkIQ==",
  "mediaType": "text/plain",
  "charset": null,
  "base64": true,
  "payloadBytes": 13,
  "uriLength": 43
}
Input schema
{
  "type": "object",
  "required": [
    "op"
  ],
  "properties": {
    "op": {
      "type": "string",
      "enum": [
        "encode",
        "decode",
        "parse"
      ],
      "examples": [
        "encode"
      ]
    },
    "data": {
      "type": "string",
      "examples": [
        "Hello, World!"
      ]
    },
    "dataUri": {
      "type": "string",
      "examples": [
        "data:text/plain;base64,SGVsbG8sIFdvcmxkIQ=="
      ]
    },
    "mediaType": {
      "type": "string",
      "examples": [
        "text/plain"
      ]
    },
    "charset": {
      "type": "string",
      "examples": [
        "utf-8"
      ]
    },
    "base64": {
      "type": "boolean",
      "examples": [
        true
      ]
    },
    "inputIsBase64": {
      "type": "boolean",
      "examples": [
        false
      ]
    }
  },
  "examples": [
    {
      "op": "encode",
      "data": "Hello, World!",
      "mediaType": "text/plain",
      "base64": true
    },
    {
      "op": "parse",
      "dataUri": "data:text/plain;base64,SGVsbG8sIFdvcmxkIQ=="
    }
  ]
}
Output schema
{
  "type": "object",
  "additionalProperties": true
}