---
title: "write to stream · RUAL Documentation"
description: "Writes part of a response to the client. After the whole response has been streamed, we need to call end stream."
canonical: https://docs.rual.nl/block-types/http%20connection/httpconnection_set_stream
language: en
---

[Cluster](https://docs.rual.nl/cluster)

[Blocks](https://docs.rual.nl/block-types)

[Interfaces](https://docs.rual.nl/interfaces)

[Blueprints](https://docs.rual.nl/blueprints)

[Tutorials](https://docs.rual.nl/tutorials)

[Home automation](https://docs.rual.nl/home-automation)

[Examples](https://docs.rual.nl/examples)

[Reference](https://docs.rual.nl/reference)

[Architecture](https://docs.rual.nl/architecture)

[Troubleshooting](https://docs.rual.nl/troubleshooting)

Other

# write to stream

This block is part of the [`http connection`](https://docs.rual.nl/block-types/http%20connection) group and was last modified in core [`v10.4.28`](https://docs.rual.nl/core-versions/100428).

Writes part of a response to the client. After the whole response has been streamed, we need to call end stream.

- flow `flow`

- connection required `httpconnection`

- code required `number` HTTP Status Code to return on this response.

- type `value` Sets the Content-Type HTTP header.

Default `text/plain`

- Headers `array ` Custom HTTP Headers to set, Array of Objects [{ key: Value, value: Value }]

- Chunk required `value` Writes part of a response to the client. After the whole response has been streamed, we need to call end stream.

- flow `flow`

- connection `httpconnection`

Appends the value pin as the next chunk of a streamed response : call it repeatedly, then finish with httpconnection_set_stream_end, which is what actually flushes. The code, type and headers pins are only applied when set; a falsy value (0, false, "", nil) appends an empty string chunk. This block alone never completes the response.

A typical wiring for [write to stream](https://docs.rual.nl/block-types/http%2520connection/httpconnection_set_stream): a [function trigger](https://docs.rual.nl/block-types/globals/trigger_custom_function) starts the flow; [number](https://docs.rual.nl/block-types/number/number_default) feeds the `code` pin; the `flow` out pin feeds [debug](https://docs.rual.nl/block-types/state%2520ui/state_debug).

[![Studio canvas example for the write to stream block: typical wiring for write to stream.](https://docs.rual.nl/canvas-examples/httpconnection_set_stream.png)](https://docs.rual.nl/canvas-examples/httpconnection_set_stream.png?v=3)

## Version history

Introduced in [`v10.4.28`](https://docs.rual.nl/core-versions/100428).

- [Back to `http connection`](https://docs.rual.nl/block-types/http%20connection): Return to the main group to view all sub-groups

- [Back to `response`](https://docs.rual.nl/block-types/http%20connection?group=response): Return to the group to view all blocks within this group

Was this page helpful? [Tell us what to improve](https://docs.rual.nl/support) · RUAL Docs is an integral component of the [RUAL ecosystem](https://rual.nl)
