# Upsert a Queue

> Updates or creates a queue

## Endpoint

`POST https://qstash-{region}.upstash.io/v2/queues`

## Request body

- `queueName` (string, required): The name of the queue
- `parallelism` (integer, required): The number of parallel consumers consuming from the queue. Must be greater than 0.


## Responses

### 200 - Queue created or updated successfully

### 400 - Queue name is invalid. Queue names can only contain alphanumeric characters, hyphens, periods, and underscores.

- `error` (string, required): Error message

### 412 - Either exceeded the maximum number of queues allowed or the maximum parallelism per queue.

- `error` (string, required): Error message

## cURL

```bash
curl --request POST \
  --url https://qstash-{region}.upstash.io/v2/queues \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "queueName": "<queueName>",
    "parallelism": 0
  }'
```
