Ir diretamente para o conteúdo principal

Update a Stream – Streams REST API

Atualizado em
Jul 31, 2026

Visão geral

Updates the configuration of an existing stream. Use this endpoint to modify a stream's name, filter function, destination, destination attributes, extra destinations, batch size, metadata settings, reorg handling, distance-from-tip, notification email, and other configuration options without needing to delete and recreate the stream.

Key capabilities:

  • Change webhook URL or destination credentials
  • Update filter functions on-the-fly
  • Switch compression settings
  • Adjust retry parameters
  • Add or modify extra destinations
  • Update batch size and elastic batching settings

note

O network, dataset, e region fields cannot be changed after stream creation. To change these, create a new stream instead.

Endpoint

Send a PATCH request to update an existing stream.

PATCH https://api.quicknode.com/streams/rest/v1/streams/{id}

Parâmetros do caminho

ParameterTipoRequiredDescrição
idcadeia de caracteresSimThe unique identifier (UUID) of the stream to update

Request Parameters

All body parameters are optional. Only include the fields you want to update.

ParameterTipoRequiredDescrição
nomecadeia de caracteresNãoA new name for your stream
filter_functioncadeia de caracteresNãoBase64-encoded JavaScript filter function
start_rangenúmero inteiroNãoStarting block number
end_rangenúmero inteiroNãoEnding block number
dataset_batch_sizenúmero inteiroNãoNumber of blocks to batch per delivery
statuscadeia de caracteresNãoactive or paused
elastic_batch_enabledbooleanoNãoAuto-adjust batch size to 1 near chain tip
fix_block_reorgsnúmero inteiroNão1 to enable reorg detection
keep_distance_from_tipnúmero inteiroNãoBlocks to stay behind chain tip
notification_emailcadeia de caracteresNãoEmail for stream termination alerts
destinationcadeia de caracteresNãowebhook, s3, azure, or postgres
destination_attributesobjetoNãoConfiguration for selected destination
extra_destinationsmatrizNãoAdditional destinations

Destination Attributes

When updating destination attributes, the configuration options vary based on the selected destination type. Select a tab below to view the attributes for each destination.

ParameterTipoRequiredDescrição
urlcadeia de caracteresSimWebhook endpoint URL
compressioncadeia de caracteresSimnone or gzip
max_retrynúmero inteiroSimMax retry attempts
retry_interval_secnúmero inteiroSimSeconds between retries
post_timeout_secnúmero inteiroSimRequest timeout in seconds
headersobjetoNãoCustom headers as key-value pairs
mtlsbooleanoNãoEnable mutual TLS: Quicknode authenticates to your endpoint with its client certificate. Requires an HTTPS URL. Send false explicitly to disable. See the Webhook destination page for server setup.
ssl_ca_pemcadeia de caracteresNãoCA certificate (PEM) used to verify your endpoint's server certificate when it is signed by a private CA. Send an empty string to clear.

For mTLS server configuration and how to download the Quicknode CA certificate, see Mutual TLS on the Webhook destination page.

Example Request

curl -X PATCH "https://api.quicknode.com/streams/rest/v1/streams/f6ad6459-b5ad-4183-b370-1c1388e47e83" \
-H "accept: application/json" \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"name": "Updated Stream Name",
"destination_attributes": {
"url": "https://new-webhook.site",
"compression": "gzip",
"max_retry": 5,
"retry_interval_sec": 2,
"post_timeout_sec": 15,
"mtls": true
}
}'

Resposta

On success, the API returns the updated stream object with all configuration and status information.

{
"id": "f6ad6459-b5ad-4183-b370-1c1388e47e83",
"name": "Updated Stream Name",
"network": "ethereum-mainnet",
"dataset": "block",
"region": "usa_east",
"filter_function": "ZnVuY3Rpb24gbWFpbihkYXRhKSB7Li4ufQ==",
"start_range": 100,
"end_range": 200,
"dataset_batch_size": 1,
"elastic_batch_enabled": true,
"fix_block_reorgs": 0,
"keep_distance_from_tip": 0,
"destination": "webhook",
"destination_attributes": {
"url": "https://new-webhook.site",
"compression": "gzip",
"max_retry": 5,
"retry_interval_sec": 2,
"post_timeout_sec": 15,
"mtls": true,
"security_token": "qn_xxxxxxxxxxxxxx"
},
"status": "active",
"sequence": 150,
"current_hash": "0x1234567890abcdef...",
"notification_email": null,
"extra_destinations": [],
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T14:00:00Z"
}

Response Fields

FieldTipoDescrição
idcadeia de caracteresUnique stream identifier (UUID)
nomecadeia de caracteresStream name
networkcadeia de caracteresBlockchain network
datasetcadeia de caracteresDataset type
regioncadeia de caracteresDeployment region
filter_functioncadeia de caracteresBase64-encoded filter function (if configured)
start_rangenúmero inteiroStarting block number
end_rangenúmero inteiroEnding block number (null for continuous)
dataset_batch_sizenúmero inteiroNumber of blocks per batch
elastic_batch_enabledbooleanoWhether elastic batching is enabled
fix_block_reorgsnúmero inteiroReorg detection setting (1 = enabled)
keep_distance_from_tipnúmero inteiroBlocks to stay behind chain tip
destinationcadeia de caracteresDestination type (webhook, s3, azure, postgres)
destination_attributesobjetoDestination configuration (varies by type)
statuscadeia de caracteresStream status (active or paused)
sequêncianúmero inteiroLast delivered block from the data range
current_hashcadeia de caracteresHash of the current block being processed
notification_emailcadeia de caracteresEmail for stream termination alerts
extra_destinationsmatrizAdditional destinations (if configured)
created_atcadeia de caracteresStream creation timestamp (ISO 8601)
atualizado_emcadeia de caracteresLast update timestamp (ISO 8601)
note

Sensitive fields like secret_key (S3), sas_token (Azure), and password (PostgreSQL) are not returned in the response for security reasons.