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 URL
Integration docshttps://x402.hexl.dev/v1/util/util-data-uriExample 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
}