---
title: Update Queue
---

[Skip to content](#%5Ftop) 

[API Reference](https://developers.cloudflare.com/api/typescript)

[Queues](https://developers.cloudflare.com/api/typescript/resources/queues)

Copy Markdown

Open in **Claude**

Open in **ChatGPT**

Open in **Cursor**

---

**Copy Markdown**

**View as Markdown**

# Update Queue

client.queues.update(stringqueueID, QueueUpdateParams { account\_id, queue\_name, settings } params, RequestOptionsoptions?): [Queue](https://developers.cloudflare.com/api/typescript/resources/queues#%28resource%29%20queues%20%3E%20%28model%29%20queue%20%3E%20%28schema%29) { consumers, consumers\_total\_count, created\_on, 6 more } 

PUT/accounts/{account\_id}/queues/{queue\_id}

Updates a Queue. Note that this endpoint does not support partial updates. If successful, the Queue’s configuration is overwritten with the supplied configuration.

##### Security

API Token

The preferred authorization scheme for interacting with the Cloudflare API. [Create a token](https://developers.cloudflare.com/fundamentals/api/get-started/create-token/).

**Example:**`Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY`

API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

**Example:**`X-Auth-Email: user@example.com`

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

**Example:**`X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194`

##### Accepted Permissions (at least one required)

`Queues Write` `Workers Scripts Write`

##### ParametersExpand Collapse 

queueID: string

A Resource identifier.

maxLength32

params: QueueUpdateParams { account\_id, queue\_name, settings } 

account\_id: string

Path param: A Resource identifier.

maxLength32

queue\_name?: string

Body param

settings?: [Settings](https://developers.cloudflare.com/api/typescript/resources/queues/methods/update#%28resource%29%20queues%20%3E%20%28method%29%20update%20%3E%20%28params%29%20default%20%3E%20%28param%29%20settings%20%3E%20%28schema%29)

Body param

delivery\_delay?: number

Number of seconds to delay delivery of all messages to consumers.

delivery\_paused?: boolean

Indicates if message delivery to consumers is currently paused.

message\_retention\_period?: number

Number of seconds after which an unconsumed message will be delayed.

##### ReturnsExpand Collapse 

Queue { consumers, consumers\_total\_count, created\_on, 6 more } 

consumers?: Array<[Consumer](https://developers.cloudflare.com/api/typescript/resources/queues#%28resource%29%20queues.consumers%20%3E%20%28model%29%20consumer%20%3E%20%28schema%29)\>

One of the following:

MqWorkerConsumerResponse { consumer\_id, created\_on, dead\_letter\_queue, 4 more } 

consumer\_id?: string

A Resource identifier.

maxLength32

created\_on?: string

formatdate-time

dead\_letter\_queue?: string

Name of the dead letter queue, or empty string if not configured

queue\_name?: string

script\_name?: string

Name of a Worker

settings?: Settings { batch\_size, max\_concurrency, max\_retries, 2 more } 

batch\_size?: number

The maximum number of messages to include in a batch.

max\_concurrency?: number

Maximum number of concurrent consumers that may consume from this Queue. Set to `null` to automatically opt in to the platform’s maximum (recommended).

max\_retries?: number

The maximum number of retries

max\_wait\_time\_ms?: number

The number of milliseconds to wait for a batch to fill up before attempting to deliver it

retry\_delay?: number

The number of seconds to delay before making the message available for another attempt.

type?: "worker"

MqHTTPConsumerResponse { consumer\_id, created\_on, dead\_letter\_queue, 3 more } 

consumer\_id?: string

A Resource identifier.

maxLength32

created\_on?: string

formatdate-time

dead\_letter\_queue?: string

Name of the dead letter queue, or empty string if not configured

queue\_name?: string

settings?: Settings { batch\_size, max\_retries, retry\_delay, visibility\_timeout\_ms } 

batch\_size?: number

The maximum number of messages to include in a batch.

max\_retries?: number

The maximum number of retries

retry\_delay?: number

The number of seconds to delay before making the message available for another attempt.

visibility\_timeout\_ms?: number

The number of milliseconds that a message is exclusively leased. After the timeout, the message becomes available for another attempt.

type?: "http\_pull"

consumers\_total\_count?: number

created\_on?: string

modified\_on?: string

producers?: Array<MqWorkerProducer { script, type } | MqR2Producer { bucket\_name, type } \>

One of the following:

MqWorkerProducer { script, type } 

script?: string

type?: "worker"

MqR2Producer { bucket\_name, type } 

bucket\_name?: string

type?: "r2\_bucket"

producers\_total\_count?: number

queue\_id?: string

queue\_name?: string

settings?: Settings { delivery\_delay, delivery\_paused, message\_retention\_period } 

delivery\_delay?: number

Number of seconds to delay delivery of all messages to consumers.

delivery\_paused?: boolean

Indicates if message delivery to consumers is currently paused.

message\_retention\_period?: number

Number of seconds after which an unconsumed message will be delayed.

### Update Queue

TypeScript

HTTPHTTP

TypeScriptTypeScript

PythonPython

GoGo

TerraformTerraform

```
import Cloudflare from 'cloudflare';

const client = new Cloudflare({
  apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted
});

const queue = await client.queues.update('023e105f4ecef8ad9ca31a8372d0c353', {
  account_id: '023e105f4ecef8ad9ca31a8372d0c353',
});

console.log(queue.queue_id);
```

200 example

```
{
  "errors": [
    {
      "code": 7003,
      "message": "No route for the URI",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    "string"
  ],
  "result": {
    "consumers": [
      {
        "consumer_id": "023e105f4ecef8ad9ca31a8372d0c353",
        "created_on": "2019-12-27T18:11:19.117Z",
        "dead_letter_queue": "dead_letter_queue",
        "queue_name": "example-queue",
        "script_name": "my-consumer-worker",
        "settings": {
          "batch_size": 50,
          "max_concurrency": 10,
          "max_retries": 3,
          "max_wait_time_ms": 5000,
          "retry_delay": 10
        },
        "type": "worker"
      }
    ],
    "consumers_total_count": 0,
    "created_on": "created_on",
    "modified_on": "modified_on",
    "producers": [
      {
        "script": "script",
        "type": "worker"
      }
    ],
    "producers_total_count": 0,
    "queue_id": "queue_id",
    "queue_name": "example-queue",
    "settings": {
      "delivery_delay": 5,
      "delivery_paused": true,
      "message_retention_period": 345600
    }
  },
  "success": true
}
```

##### Returns Examples

200 example

```
{
  "errors": [
    {
      "code": 7003,
      "message": "No route for the URI",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    "string"
  ],
  "result": {
    "consumers": [
      {
        "consumer_id": "023e105f4ecef8ad9ca31a8372d0c353",
        "created_on": "2019-12-27T18:11:19.117Z",
        "dead_letter_queue": "dead_letter_queue",
        "queue_name": "example-queue",
        "script_name": "my-consumer-worker",
        "settings": {
          "batch_size": 50,
          "max_concurrency": 10,
          "max_retries": 3,
          "max_wait_time_ms": 5000,
          "retry_delay": 10
        },
        "type": "worker"
      }
    ],
    "consumers_total_count": 0,
    "created_on": "created_on",
    "modified_on": "modified_on",
    "producers": [
      {
        "script": "script",
        "type": "worker"
      }
    ],
    "producers_total_count": 0,
    "queue_id": "queue_id",
    "queue_name": "example-queue",
    "settings": {
      "delivery_delay": 5,
      "delivery_paused": true,
      "message_retention_period": 345600
    }
  },
  "success": true
}
```