diff --git a/internal/apiclient/v20250101/api.gen.go b/internal/apiclient/v20250101/api.gen.go
index 3844336bbddfea9e53daad145ba925da44c70ce1..cc8f979f2c168e147742e579dde464c934f8ce3d 100644
--- a/internal/apiclient/v20250101/api.gen.go
+++ b/internal/apiclient/v20250101/api.gen.go
@@ -74,6 +74,7 @@ const (
 	Ownership   DevicePatchRemove = "ownership"
 	Serial      DevicePatchRemove = "serial"
 	Tags        DevicePatchRemove = "tags"
+	UserEmail   DevicePatchRemove = "userEmail"
 )
 
 // Defines values for NewAuthorityType.
@@ -464,6 +465,11 @@ type DevicePatch struct {
 
 	// Tags A set of tags that can be used to group devices.
 	Tags *DeviceTags `json:"tags,omitempty"`
+
+	// UserEmail The email of the user the device is assigned to.
+	// This field may be populated with a value derived from data synced from your team's MDMs.
+	// Setting this value explicitly will mask any MDM-derived value.
+	UserEmail *string `json:"userEmail,omitempty"`
 }
 
 // DevicePatchRemove defines model for DevicePatch.Remove.
@@ -6054,159 +6060,159 @@ var swaggerSpec = []string{
 	"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",
-	"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",
-	"Z+4Zvvg8WJz1u4uz3gJb/Zdfh589PDm+evHm2tlFr/d92Hj5DtZf4OvBu9qru/lXe/lyvzp6FY6b49cD",
-	"c/h2ethqw5P9V9eXl6PG6csvbxcvF7j7on9+EX29Px6OXpz0F9Og77y5e1WdN+Grva99/8t993rcHXaq",
-	"J1+O3pjjT69f7g0fHoYnd8fh/PRib9Z63WqQ4Wt6vv/l8l3YfO28ehi2L2pv8dHXLz3nXRs1TbKcHr39",
-	"NJm+QW/d08HJtXW3INMXF114MTq/J8PG6Lzxvr67b93DI3h+3vPt9w8L02u+rluHl4d7HTuE84592dkj",
-	"Z/T1fHrSfxvAzw8WmgSv+4N+q3k6Oz4eWa/OzE/z3dm0eQm/Hn51Tw7p9Hh+Ync+Rxe1+8b5LnrAjtmn",
-	"k+DOI7tkdDxxdiedy05z7zSYjGefLuze4NP7Qf0tPN1FNr4mb8Z48NC7W/YvWnfL6y/vv0a0eTo1dy2r",
-	"sesfzacBGd5NnHa4a9nWW2KZTmt8v3s/6+P3d++++N3BGTwZTMfn++6rzuzz5y/NAQrfvz+p9dve6VF0",
-	"ufhkudGi6jVOyN1X6vbvzk/33r46vD8dNU8XcQn1lt1Bk8Z+zbTs2tRsQVg3J3C/bXYsOG1Be7o3hZaR",
-	"eIWhMzMOjMFIWEat4J4pBab4646P530ZLJr9F4ftLxD69jj4cvfJ879evei/PYJn48MX+8Np9GbaCjx8",
-	"xvqES253FWm+THBjpqY8GAfGu65/FnVQ96TrTk/P8SwcNUMn3HvRdK3WwzvLikjXf3XUwfc9thY2zPGr",
-	"2fDwvXlh1cLu2/HnzjsX7c9PX7/qBX4zmnp3rlsPrS/7F1FNOS+NsyUo9Uyz84h7tuRN/IOByOyvjOxg",
-	"50iOeZtmrZVn3uRe98EodI/vV3x0Hi7HENm263vtZr1hTnetmtlqNXbNPThtmHa9Ntltt/ZsC06Nwj1I",
-	"vKdeyzzcUq7z82OXLZDPaDU7k1q7MTF36+2a2drrWOakvW+ZNXvPqiPLRrt8xnTgt+38uIF4gu1D2csJ",
-	"/Odqtaqt8c9/VM5ldtoz4NSnmjZ5YSl5IEm6P8XippNma2/aMKftac1s7e83zf3WXsNs2y3U2a3BerOG",
-	"ss/dyBeo1NUpLx9lnqbnGgsnFM3zhB/it+6KT9X9IJ6ShUqvB1tno9NptHYnNbMxaSCz1aztm5NJu2W2",
-	"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",
-	"+PHx/wUAAP//it8lPwsQAQA=",
+	"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",
 }
 
 // GetSwagger returns the content of the embedded swagger specification file
diff --git a/internal/provider/device/model.go b/internal/provider/device/model.go
index 9b1ad8395b3bca4ee38fae41b958242273c79ef0..4f6d9a185de799dfaae293938c9846fba767ec8c 100644
--- a/internal/provider/device/model.go
+++ b/internal/provider/device/model.go
@@ -161,7 +161,7 @@ func toAPI(ctx context.Context, m *Model) (*v20250101.DeviceRequest, diag.Diagno
 	if !m.Ownership.IsNull() && !m.Ownership.IsUnknown() {
 		d.Ownership = utils.Ref(v20250101.DeviceOwnership(m.Ownership.ValueString()))
 	}
-	if !m.Metadata.IsNull() && !m.Ownership.IsUnknown() {
+	if !m.Metadata.IsNull() && !m.Metadata.IsUnknown() {
 		meta := map[string]types.String{}
 		diag := m.Metadata.ElementsAs(ctx, &meta, false)
 		diags.Append(diag...)
diff --git a/internal/provider/device/resource.go b/internal/provider/device/resource.go
index e42b287629d2b222fe471ef5f508921ac57ae591..93a3f3a84901beed2476ca35f28c605f26a3c662 100644
--- a/internal/provider/device/resource.go
+++ b/internal/provider/device/resource.go
@@ -271,60 +271,105 @@ func (a *Resource) Create(ctx context.Context, req resource.CreateRequest, resp
 }
 
 func (r *Resource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse) {
-	resp.Diagnostics.AddError(
-		"Update not supported",
-		"All changes require replacement",
-	)
-	/*
-		plan := &Model{}
-		diags := req.Plan.Get(ctx, plan)
-		if diags.HasError() {
-			resp.Diagnostics.Append(diags...)
-			return
-		}
-		var deviceID string
-		req.State.GetAttribute(ctx, path.Root("id"), &deviceID)
-
-		patch, diags := toAPI(ctx, plan)
-		if diags.HasError() {
-			resp.Diagnostics.Append(diags...)
-			return
-		}
-
-		httpResp, err := r.client.PatchDevice(ctx, deviceID, &v20250101.PatchDeviceParams{}, *patch)
-		if err != nil {
-			resp.Diagnostics.AddError(
-				"Smallstep API Client Error",
-				err.Error(),
-			)
-			return
-		}
-		defer httpResp.Body.Close()
-
-		if httpResp.StatusCode != http.StatusOK {
-			reqID := httpResp.Header.Get("X-Request-Id")
-			resp.Diagnostics.AddError(
-				"Smallstep API Response Error",
-				fmt.Sprintf("Request %q received status %d updating device: %s", reqID, httpResp.StatusCode, utils.APIErrorMsg(httpResp.Body)),
-			)
-			return
-		}
-
-		device := &v20250101.Device{}
-		if err := json.NewDecoder(httpResp.Body).Decode(device); err != nil {
-			resp.Diagnostics.AddError(
-				"Smallstep API Client Error",
-				fmt.Sprintf("Failed to parse device update response: %v", err),
-			)
-			return
-		}
-
-		model, diags := fromAPI(ctx, device, req.Plan)
+	plan := &Model{}
+	diags := req.Plan.Get(ctx, plan)
+	if diags.HasError() {
 		resp.Diagnostics.Append(diags...)
+		return
+	}
+	var deviceID string
+	req.State.GetAttribute(ctx, path.Root("id"), &deviceID)
 
-		diags = resp.State.Set(ctx, model)
+	resource, diags := toAPI(ctx, plan)
+	if diags.HasError() {
 		resp.Diagnostics.Append(diags...)
-	*/
+		return
+	}
+
+	patch := v20250101.DevicePatch{}
+	var remove []v20250101.DevicePatchRemove
+
+	if resource.DisplayId == nil {
+		remove = append(remove, v20250101.DisplayId)
+	} else {
+		patch.DisplayId = resource.DisplayId
+	}
+
+	if resource.DisplayName == nil {
+		remove = append(remove, v20250101.DisplayName)
+	} else {
+		patch.DisplayName = resource.DisplayName
+	}
+
+	if resource.Metadata == nil {
+		remove = append(remove, v20250101.Metadata)
+	} else {
+		patch.Metadata = resource.Metadata
+	}
+
+	if resource.Os == nil {
+		remove = append(remove, v20250101.Os)
+	} else {
+		patch.Os = resource.Os
+	}
+
+	if resource.Ownership == nil {
+		remove = append(remove, v20250101.Ownership)
+	} else {
+		patch.Ownership = resource.Ownership
+	}
+
+	if resource.Serial == nil {
+		remove = append(remove, v20250101.Serial)
+	} else {
+		patch.Serial = resource.Serial
+	}
+
+	if resource.Tags == nil {
+		remove = append(remove, v20250101.Tags)
+	} else {
+		patch.Tags = resource.Tags
+	}
+
+	if resource.User == nil || resource.User.Email == "" {
+		remove = append(remove, v20250101.UserEmail)
+	} else {
+		patch.UserEmail = &resource.User.Email
+	}
+
+	httpResp, err := r.client.PatchDevice(ctx, deviceID, &v20250101.PatchDeviceParams{}, patch)
+	if err != nil {
+		resp.Diagnostics.AddError(
+			"Smallstep API Client Error",
+			err.Error(),
+		)
+		return
+	}
+	defer httpResp.Body.Close()
+
+	if httpResp.StatusCode != http.StatusOK {
+		reqID := httpResp.Header.Get("X-Request-Id")
+		resp.Diagnostics.AddError(
+			"Smallstep API Response Error",
+			fmt.Sprintf("Request %q received status %d updating device: %s", reqID, httpResp.StatusCode, utils.APIErrorMsg(httpResp.Body)),
+		)
+		return
+	}
+
+	device := &v20250101.Device{}
+	if err := json.NewDecoder(httpResp.Body).Decode(device); err != nil {
+		resp.Diagnostics.AddError(
+			"Smallstep API Client Error",
+			fmt.Sprintf("Failed to parse device update response: %v", err),
+		)
+		return
+	}
+
+	model, diags := fromAPI(ctx, device, req.Plan)
+	resp.Diagnostics.Append(diags...)
+
+	diags = resp.State.Set(ctx, model)
+	resp.Diagnostics.Append(diags...)
 }
 
 func (r *Resource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse) {
diff --git a/internal/provider/device/resource_test.go b/internal/provider/device/resource_test.go
index 4b119050f402297460cdb9034518b6bb6ddfe6f1..5eb16e697e1ba55726686834dafede475e08bc19 100644
--- a/internal/provider/device/resource_test.go
+++ b/internal/provider/device/resource_test.go
@@ -56,14 +56,23 @@ resource "smallstep_device" "laptop1" {
 		},
 	})
 
-	permanentID = uuid.NewString()
+	permanentID2 := uuid.NewString()
 	fullConfig := fmt.Sprintf(`
 resource "smallstep_device" "laptop1" {
 	permanent_identifier = %q
 	display_id = "9 9"
+	display_name = "Employee Laptop"
 	serial = "678"
 	tags = ["ubuntu"]
-}`, permanentID)
+	metadata = {
+		k1 = "v1"
+	}
+	os = "Windows"
+	ownership = "company"
+	user = {
+		email = "user@example.com"
+	}
+}`, permanentID2)
 
 	helper.Test(t, helper.TestCase{
 		ProtoV6ProviderFactories: providerFactories,
@@ -72,10 +81,74 @@ resource "smallstep_device" "laptop1" {
 				Config: fullConfig,
 				Check: helper.ComposeAggregateTestCheckFunc(
 					helper.TestMatchResourceAttr("smallstep_device.laptop1", "id", regexp.MustCompile(`^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`)),
-					helper.TestCheckResourceAttr("smallstep_device.laptop1", "permanent_identifier", permanentID),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "permanent_identifier", permanentID2),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "display_id", "9 9"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "display_name", "Employee Laptop"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "serial", "678"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "user.email", "user@example.com"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "os", "Windows"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "ownership", "company"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "tags.0", "ubuntu"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "metadata.k1", "v1"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "connected", "false"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "high_assurance", "false"),
+					helper.TestCheckNoResourceAttr("smallstep_device.laptop1", "enrolled_at"),
+					helper.TestCheckNoResourceAttr("smallstep_device.laptop1", "last_seen"),
+				),
+			},
+			{
+				ResourceName:      "smallstep_device.laptop1",
+				ImportState:       true,
+				ImportStateVerify: true,
+			},
+		},
+	})
+
+	permanentID3 := uuid.NewString()
+	config1 := fmt.Sprintf(`
+resource "smallstep_device" "laptop1" {
+	permanent_identifier = %q
+}`, permanentID3)
+	config2 := fmt.Sprintf(`
+resource "smallstep_device" "laptop1" {
+	permanent_identifier = %q
+	display_id = "9 9"
+	display_name = "Employee Laptop"
+	serial = "678"
+	tags = ["ubuntu"]
+	metadata = {
+		k1 = "v1"
+	}
+	os = "Windows"
+	ownership = "company"
+	user = {
+		email = "user@example.com"
+	}
+}`, permanentID3)
+
+	helper.Test(t, helper.TestCase{
+		ProtoV6ProviderFactories: providerFactories,
+		Steps: []helper.TestStep{
+			{
+				Config: config1,
+			},
+			{
+				Config: config2,
+				Check: helper.ComposeAggregateTestCheckFunc(
+					helper.TestMatchResourceAttr("smallstep_device.laptop1", "id", regexp.MustCompile(`^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`)),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "permanent_identifier", permanentID3),
 					helper.TestCheckResourceAttr("smallstep_device.laptop1", "display_id", "9 9"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "display_name", "Employee Laptop"),
 					helper.TestCheckResourceAttr("smallstep_device.laptop1", "serial", "678"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "user.email", "user@example.com"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "os", "Windows"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "ownership", "company"),
 					helper.TestCheckResourceAttr("smallstep_device.laptop1", "tags.0", "ubuntu"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "metadata.k1", "v1"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "connected", "false"),
+					helper.TestCheckResourceAttr("smallstep_device.laptop1", "high_assurance", "false"),
+					helper.TestCheckNoResourceAttr("smallstep_device.laptop1", "enrolled_at"),
+					helper.TestCheckNoResourceAttr("smallstep_device.laptop1", "last_seen"),
 				),
 			},
 			{