summaryrefslogtreecommitdiff
path: root/doc/api/admin_sidekiq_queues.md
blob: 32d336e79fe0341f32d143d22b96d915faa288ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# Admin Sidekiq queues API

> **Note:** This feature was [introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/25998) in GitLab 12.9

Delete jobs from a Sidekiq queue that match the given
[metadata](../development/logging.md#logging-context-metadata-through-rails-or-grape-requests).

The response has three fields:

1. `deleted_jobs` - the number of jobs deleted by the request.
1. `queue_size` - the remaining size of the queue after processing the
   request.
1. `completed` - whether or not the request was able to process the
   entire queue in time. If not, retrying with the same parameters may
   delete further jobs (including those added after the first request
   was issued).

This API endpoint is only available to admin users.

```plaintext
DELETE /admin/sidekiq/queues/:queue_name
```

| Attribute           | Type           | Required | Description                                                                                                                                  |
| ---------           | -------------- | -------- | -----------                                                                                                                                  |
| `queue_name`        | string         | yes      | The name of the queue to delete jobs from                                                                                                    |
| `user`              | string         | no       | The username of the user who scheduled the jobs                                                                                              |
| `project`           | string         | no       | The full path of the project where the jobs were scheduled from                                                                              |
| `root_namespace`    | string         | no       | The root namespace of the project                                                                                                            |
| `subscription_plan` | string         | no       | The subscription plan of the root namespace (GitLab.com only)                                                                                |
| `caller_id`         | string         | no       | The endpoint or background job that schedule the job (for example: `ProjectsController#create`, `/api/:version/projects/:id`, `PostReceive`) |

At least one attribute, other than `queue_name`, is required.

```shell
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/admin/sidekiq/queues/authorized_projects?user=root"
```

Example response:

```json
{
  "completed": true,
  "deleted_jobs": 7,
  "queue_size": 14
}
```