meta { name: Update Media Rating type: http seq: 1 } put { url: {{base_url}}/api/media-items/{{media_item_id}}/rating body: json auth: inherit } body:json { { "rating": 4, "review": "Great book! Very enjoyable read." } } headers { Content-Type: application/json } tests { test_update_media_rating_success(status, headers, body) { if (status !== 200) { throw new Error("Expected status 200, got " + status); } const contentType = headers["content-type"]; if (!contentType || !contentType.includes("application/json")) { throw new Error("Expected content-type to contain application/json"); } let data; try { data = JSON.parse(body); } catch (e) { throw new Error("Response body is not valid JSON"); } if (!data.id) { throw new Error("Response missing id field"); } if (typeof data.rating !== "number") { throw new Error("Rating should be a number"); } return true; } } vars:pre-request { mediaItemId: "8821b703-1234-5678-9123-446655440001" } settings { encodeUrl: true timeout: 0 } docs { ## Update Media Rating Updates an existing rating for a media item. **Method:** PUT **Endpoint:** /api/media-items/:id/rating **Authentication:** Required (Bearer token) **Path Parameters:** - `id` (string, required): Media item UUID **Request Body:** - `rating` (number, required): Rating value (typically 1-5) - `review` (string, optional): Review text **Response:** Updated rating object - `id` (string): Rating ID - `media_item_id` (string): Media item UUID - `rating` (number): Rating value - `review` (string): Review text - `created_at` (string): Creation timestamp - `updated_at` (string): Last update timestamp **Status Codes:** - 200: Success - 400: Invalid request body - 401: Unauthorized - 404: Media item or rating not found - 500: Internal server error }