---
title: "Bulk Users Update"
method: PATCH
path: "/bulk/users"
tags: ["Bulk Job Requests"]
---

# Bulk Users Update

`PATCH /bulk/users`

## Request

- Base URL: `https://console.jumpcloud.com/api/v2`
- URL: `https://console.jumpcloud.com/api/v2/bulk/users`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/jumpcloud/apis/jumpcloud-api-2/docs/bulk/users/patch.ts> (a function with typed inputs; its response is checked against the schema)

The endpoint allows you to create a bulk job to asynchronously update users. See [Update a System User](https://docs.jumpcloud.com/api/1.0/index.html#operation/systemusers_put) for full list of attributes.

#### Sample Request 
```
curl -X PATCH https://console.jumpcloud.com/api/v2/bulk/users \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -d '[
	{
	  "id":"5be9fb4ddb01290001e85109",
		"firstname":"{UPDATED_FIRSTNAME}",
		"department":"{UPDATED_DEPARTMENT}",
		"attributes":[
			{"name":"Custom","value":"{ATTRIBUTE_VALUE}"}
		]
	},
	{
	  "id":"5be9fb4ddb01290001e85109",
		"firstname":"{UPDATED_FIRSTNAME}",
		"costCenter":"{UPDATED_COST_CENTER}",
		"phoneNumbers":[
			{"type":"home","number":"{HOME_PHONE_NUMBER}"},
			{"type":"work","number":"{WORK_PHONE_NUMBER}"}
		]
	}
]
```

## Query parameters

- `suppressEmail` boolean

## Headers

- `x-org-id` string

## Request body

- BulkUserUpdate[]
  - `attributes` object[]: Map of additional attributes.
  - `email` string
  - `firstname` string
  - `id` string: Object ID of the user being updated
  - `organization` string: Organization object id of the user
  - `lastname` string
  - `username` string

## Response `201`

- JobId
  - `jobId` string

---

[API](https://skmtc.dev/jumpcloud/apis/jumpcloud-api-2.md) - [All operations](https://skmtc.dev/jumpcloud/apis/jumpcloud-api-2/llms.txt) - [OpenAPI document](https://skmtc.dev/jumpcloud/apis/jumpcloud-api-2/revisions/3f09fe63caaa?raw)
