© 2026 InterSystems Corporation, Cambridge, MA. All rights reserved.Privacy & TermsGuaranteeSection 508Contest Terms

Initial Release
FastHTTP is a lightweight wrapper for %Net.HttpRequest in InterSystems IRIS, designed to simplify HTTP requests with a concise API and built-in JSON support.
Clone the repository and run:
docker-compose up -d
zpm "install fast-http"
Set response = ##class(dc.http.FastHTTP).DirectGet("url=https://httpbin.org/get")
write response.%ToJSON()
Set body = {"name": "Iris", "type": "Database"}
Set response = ##class(dc.http.FastHTTP).DirectPost("url=https://httpbin.org/post", body)
write response.%ToJSON()
// PUT Set response = ##class(dc.http.FastHTTP).DirectPut("url=https://httpbin.org/put", {"update": 1})
// DELETE
Set response = ##class(dc.http.FastHTTP).DirectDelete("url=https://httpbin.org/delete")
FastHTTP uses a configuration string to set up the request. You can pass it to the FastHTTP constructor or the Direct... methods.
Format: "key=value,key2=value2"
Supported keys:
url: The full URL to send the request to.Header_<Name>: Sets a request header. Ex: Header_Authorization=Bearer 123stream_mode: Resource ID for streaming responses (see Advanced Usage, will be explained later /todo/).Example with headers:
Set config = "url=https://api.example.com/data,Header_Authorization=Bearer mytoken,Header_Content-Type=application/json"
Set response = ##class(dc.http.FastHTTP).DirectGet(config)
The Direct... methods also return the client instance as an output parameter if you need to access the underlying %Net.HttpRequest or response metadata.
Set response = ##class(dc.http.FastHTTP).DirectGet("url=https://httpbin.org/get", , .client)
Write "Status Code: ", client.HttpRequest.HttpResponse.StatusCode