Schemathesis v4.30.1 ━━━━━━━━━━━━━━━━━━━━ ✅ Loaded specification from http://0.0.0.0:35675/api-docs/openapi.json (in 1.19s) Base URL: http://0.0.0.0:35675 Specification: Open API 3.0.4 Operations: 361 selected / 364 total Configuration: /home/stranger6667/data/programming/workbench/target s/jellyfin/schemathesis.toml Dictionaries: 1 dictionary / 6 entries ✅ API capabilities: Supports NULL byte in headers: ✘ Accepts backslash and control characters in URL paths: ✓ ⏭ Examples (in 0.60s) ⏭ 361 skipped ❌ Coverage (in 371.57s) ✅ 57 passed ❌ 304 failed 🚫 Fuzzing (in 2493.01s) ✅ 52 passed ❌ 305 failed 🚫 4 errors 🚫 Stateful (in 378.36s) Scenarios: 973 API Links: 107 covered / 5237 selected / 5237 total ✅ 706 passed ❌ 267 failed ==================================== ERRORS ==================================== _________________________ POST /Branding/Splashscreen __________________________ Serialization not possible No supported serializers for media types: image/* Check your schema or add custom serializers: https://schemathesis.readthedocs.io/en/stable/guides/custom-serializers/ ___________________ POST /Items/{itemId}/Images/{imageType} ____________________ Serialization not possible No supported serializers for media types: image/* Check your schema or add custom serializers: https://schemathesis.readthedocs.io/en/stable/guides/custom-serializers/ _____________ POST /Items/{itemId}/Images/{imageType}/{imageIndex} _____________ Serialization not possible No supported serializers for media types: image/* Check your schema or add custom serializers: https://schemathesis.readthedocs.io/en/stable/guides/custom-serializers/ _______________________________ POST /UserImage ________________________________ Serialization not possible No supported serializers for media types: image/* Check your schema or add custom serializers: https://schemathesis.readthedocs.io/en/stable/guides/custom-serializers/ ________________________________ Stateful tests ________________________________ Serialization not possible No supported serializers for media types: image/* Check your schema or add custom serializers: https://schemathesis.readthedocs.io/en/stable/guides/custom-serializers/ Need more help? Join our Discord server: https://discord.gg/R9ASRAmHnA =================================== FAILURES =================================== ________________________ DELETE /Audio/{itemId}/Lyrics _________________________ 1. Test Case ID: Y2sKwm - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-3599a00038f1346d0c13f6a9069b42ca-7c8ec1291ffed822-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Audio/null%2Cnull/Lyrics ___________________ DELETE /Collections/{collectionId}/Items ___________________ 1. Test Case ID: IOAc78 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Collections/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items 2. Test Case ID: kTKuQa - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Collections/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?ids=e3e70682-c209-1cac-a29f-6fbed82c07cd' 3. Test Case ID: ZQIhYK - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `format` at /properties/ids/items - header: violates `required` (was Authorization) [204] No Content: Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Collections/a11a14c65c2c21f4d9d5ca4cc6395b41/Items?ids=&ids=%C3%B65U' _______________________________ DELETE /Devices ________________________________ 1. Test Case ID: RBUx4n - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented Content-Type Received: text/plain Documented: application/json, application/json; profile="CamelCase", application/json; profile="PascalCase" [400] Bad Request: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Devices?id=' ________________________________ DELETE /Items _________________________________ 1. Test Case ID: OjVnqH - JSON deserialization error Response must be valid JSON with 'Content-Type: application/json' header: Expecting value: line 1 column 1 (char 0) - Missing Content-Type header The following media types are documented in the schema: - `application/json` - `application/json; profile="CamelCase"` - `application/json; profile="PascalCase"` [401] Unauthorized: Reproduce with: curl -X DELETE 'http://0.0.0.0:35675/Items?ids=e3e70682-c209-1cac-a29f-6fbed82c07cd' 2. Test Case ID: 1N523r - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `format` at /properties/ids/items - header: violates `required` (was Authorization) [204] No Content: Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items?ids=%C2%A7%3D%F2%84%98%93%C2%8A%F3%8B%A3%BE&ids=&ids=%F3%BE%AC%8B&ids=n%F3%AC%89%B9%F3%82%8A%98%F1%82%B9%8A%F2%93%AF%A5%C3%8FU%0A&ids=m%08%C2%AF%F2%B5%93%94%15%F0%B0%A2%B1%23%C2%99%F3%8F%BB%88z%18%F0%9C%A4%AC%C2%B9%5D&ids=%F4%88%93%9Ed&ids=%C3%8E%C2%8C%C2%88%04%F0%B4%8B%BB%21&ids=%C3%95&ids=&ids=m&ids=%F4%88%9B%BF%C2%B8B%F0%A6%A7%85&ids=%05T52%13&ids=Q%F0%98%90%8E%07%C3%A5%C2%A7%F0%B5%B1%90%C2%B0%C3%9B%C2%96&ids=%C2%81%11%22b%F3%97%8E%82%F1%A3%95%A9%C2%89%F3%9B%9A%A7%F1%9D%B6%82%C3%94%C3%9E' ____________________________ DELETE /Items/{itemId} ____________________________ 1. Test Case ID: MQDDa8 - JSON deserialization error Response must be valid JSON with 'Content-Type: application/json' header: Expecting value: line 1 column 1 (char 0) - Missing Content-Type header The following media types are documented in the schema: - `application/json` - `application/json; profile="CamelCase"` - `application/json; profile="PascalCase"` [401] Unauthorized: Reproduce with: curl -X DELETE http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd 2. Test Case ID: KQrbdz - Undocumented HTTP status code Received: 400 Documented: 204, 401, 404, 503, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-404ea7bfaa22a15ee6bdbf759a22637e-a90ac9aff38efae8-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/null%2Cnull 3. Test Case ID: Imi3Hs - Response violates schema "Unauthorized access" is not of type "object" Validated against the response schema for status code 401. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Unauthorized access" [401] Unauthorized: `"Unauthorized access"` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/23158e2a4bffd9671e322fbfce0ed6b4 __________________ DELETE /Items/{itemId}/Images/{imageType} ___________________ 1. Test Case ID: MuzFhn - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"imageIndex":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-4932210c9ccebeb9fe64d9555d67edc1-571064ff30c9718f-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary?imageIndex=2147483648' 2. Test Case ID: huXvum - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `imageIndex` in query - violates `type` at /properties/imageIndex (was integer, became string) [204] No Content: Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/7e64e319-657a-9516-ec78-490da03edccb/Images/Profile?imageIndex=' ____________ DELETE /Items/{itemId}/Images/{imageType}/{imageIndex} ____________ 1. Test Case ID: bXZkUs - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"imageIndex":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-a73b93777925b1fdecd6475a7dedae40-008e2004181c73da-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary/2147483648 ________________________ DELETE /Library/VirtualFolders ________________________ 1. Test Case ID: VUmX0W - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."],"refreshLibrary":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-463f62c931ad9858c70dd74c2fcb5c4a-aaec3559ef56ac8b-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/VirtualFolders?refreshLibrary=null&refreshLibrary=null' 2. Test Case ID: 5dk0QW - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."]},"traceId":"00-2bb5ba95db1198359655eee39edc9ed3-61d294c3962a18c9-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/VirtualFolders?refreshLibrary=true' 3. Test Case ID: PNxR09 - Missing header not rejected Got 400 when missing required 'Authorization' header, expected 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."]},"traceId":"00-e5ae955b6b96bde2a7c34ce517a2c53e-dc1c0915d992abc1-00"}` Reproduce with: curl -X DELETE 'http://0.0.0.0:35675/Library/VirtualFolders?name=&refreshLibrary=true' 4. Test Case ID: oQi2rF - Unexpected response to a request without authentication Expected 401 or 403, got `404 Not Found` for `DELETE /Library/VirtualFolders` [404] Not Found: `Error processing request.` Reproduce with: curl -X DELETE 'http://0.0.0.0:35675/Library/VirtualFolders?name=0' 5. Test Case ID: 5NndNT - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `Authorization` in header - violates `required` (was Authorization) [204] No Content: Reproduce with: curl -X DELETE 'http://0.0.0.0:35675/Library/VirtualFolders?name=0193' 6. Test Case ID: 22rRe2 - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/VirtualFolders?refreshLibrary=true&name=058' _____________________ DELETE /Library/VirtualFolders/Paths _____________________ 1. Test Case ID: VAh8lz - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."],"path":["The path field is required."]},"traceId":"00-bedca2982df0e68597ff747e292e0cca-acb873bff85c431c-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?name=&path=' 2. Test Case ID: PiZbU5 - Missing header not rejected Got 400 when missing required 'Authorization' header, expected 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."],"path":["The path field is required."]},"traceId":"00-53a25f0ae7c96f766fd8860c17ade541-858c3054f10e024e-00"}` Reproduce with: curl -X DELETE 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?name=&path=&refreshLibrary=true' 3. Test Case ID: B0yNq1 - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?name=0&path=0' 4. Test Case ID: Sr0jtK - API accepts requests without authentication Expected 401 or 403, got `204 No Content` for `DELETE /Library/VirtualFolders/Paths` [204] No Content: Reproduce with: curl -X DELETE 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?path=%2Fconfig%2Fdata%2Fbackups%2Fjellyfin-backup-20261010075916.zip&name=0134' 5. Test Case ID: 53zDHI - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `Authorization` in header - violates `required` (was Authorization) [204] No Content: Reproduce with: curl -X DELETE 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?name=0134&path=0' ______________________ DELETE /LiveTv/Recordings/Folders _______________________ 1. Test Case ID: oZ0ZvM - Unsupported methods Unsupported method DELETE returned 400, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"recordingId":["The value \u0027Folders\u0027 is not valid."]},"traceId":"00-ffd46d7ce7d970338e5a30674f151c45-f8be3bbc3df3bea6-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Recordings/Folders?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' ___________________ DELETE /LiveTv/Recordings/{recordingId} ____________________ 1. Test Case ID: Q9Cvao - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"recordingId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-f73c9716816eba815407ec2576e2a9dd-fbc72a2579a16144-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/Recordings/null%2Cnull ____________________ DELETE /LiveTv/SeriesTimers/{timerId} _____________________ 1. Test Case ID: 8XRr0v - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/SeriesTimers/0 2. Test Case ID: DEhLa6 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"timerId":["The timerId field is required."]},"traceId":"00-148f70429ff2d845b57c97b02d6d0d49-94a890d61a5145a8-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/SeriesTimers/%09 _______________________ DELETE /LiveTv/Timers/{timerId} ________________________ 1. Test Case ID: 9WIZi3 - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/Timers/0 ___________________ DELETE /Packages/Installing/{packageId} ____________________ 1. Test Case ID: YFRi5F - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"packageId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-5b7e90f87da14cb89ac5df1604adbdd4-71ee58e5bfcbcd6e-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Packages/Installing/null%2Cnull _____________________ DELETE /Playlists/{playlistId}/Items _____________________ 1. Test Case ID: N35MOu - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 403, 404, 503, 401 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playlists/0/Items?entryIds=AAA' ________________ DELETE /Playlists/{playlistId}/Users/{userId} _________________ 1. Test Case ID: LHczDK - Undocumented HTTP status code Received: 400 Documented: 204, 403, 404, 401, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-16aeba4a90fc3e721aa6181089567a43-ed2313960b91be78-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Users/null%2Cnull 2. Test Case ID: vlcBGb - Response violates schema "Playlist not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Playlist not found" [404] Not Found: `"Playlist not found"` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd __________________________ DELETE /Plugins/{pluginId} __________________________ 1. Test Case ID: dm3GiL - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"pluginId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-87258eb2f047d3206f934eb88b0cde2f-47587f9809022d42-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/null%2Cnull _____________________ DELETE /Plugins/{pluginId}/{version} _____________________ 1. Test Case ID: TZuGIK - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"version":["The value \u00270\u0027 is not valid."],"pluginId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2eb7f15ebf013ef547b4e815470c12a2-48ea0d6b2af7a843-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/null%2Cnull/0 2. Test Case ID: IikrtW - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"version":["The value \u00270\u0027 is not valid."]},"traceId":"00-9a95d185bfc73c733db659afb684c877-0507b4976d5df5c8-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/e3e70682-c209-1cac-a29f-6fbed82c07cd/0 ___________________ DELETE /ScheduledTasks/Running/{taskId} ____________________ 1. Test Case ID: wbY04g - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/ScheduledTasks/Running/4e6637c832ed644d1af3370a2506e80a __________________ DELETE /Sessions/{sessionId}/User/{userId} __________________ 1. Test Case ID: v4Bef7 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-18a62cf3d64ec095697baab89966c22d-313c58e3478c505b-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/22ec59cc4bec5b59f8ce9e1319428250/User/null%2Cnull 2. Test Case ID: ChC2xn - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/%C3%8F%06%C2%A1%23%11H/User/ef8e2dbd-5326-162e-9dac-7557fd725c5e ______________________ DELETE /UserFavoriteItems/{itemId} ______________________ 1. Test Case ID: TiipDW - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-cbb422cd30f54f77d1fb9427de23827f-c177bed4ad66cc67-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserFavoriteItems/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=' 2. Test Case ID: LHRN1a - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-3437f8eec6279ed5b6758160f25241cc-499abdae7a8335d4-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserFavoriteItems/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=null&userId=null' 3. Test Case ID: 99RdBP - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - violates `format` at /properties/userId [200] OK: `{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":false,"Played":false,"Key":"7e64e319-657a-9516-ec78-490da03edccb","ItemId":"7e64e319657a9516ec78490da03edccb"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserFavoriteItems/7e64e319-657a-9516-ec78-490da03edccb?userId=' ______________________________ DELETE /UserImage _______________________________ 1. Test Case ID: cSirs9 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [204] No Content: Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserImage?userId=' 2. Test Case ID: vv6cjT - Undocumented HTTP status code Received: 400 Documented: 204, 403, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-1a2fab18c08d07388ea7db212b31a9e7-e7ba53bfff57e11a-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserImage?userId=null&userId=null' 3. Test Case ID: ShABTK - Undocumented HTTP status code Received: 404 Documented: 204, 403, 503, 401 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-73ccd0d3af02cffade7b25d5cacd604e-d1be311a18f634ee-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserImage?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' ______________________ DELETE /UserItems/{itemId}/Rating _______________________ 1. Test Case ID: QWlkBJ - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-5da2cad405c0107e3eb16355dcdec55c-084600834525ad6a-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/e3e70682-c209-1cac-a29f-6fbed82c07cd/Rating?userId=' 2. Test Case ID: 6kOL8y - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-ef4a52fc14553fff2da5acab0ba286b1-c91b8c2c8d570b7d-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/e3e70682-c209-1cac-a29f-6fbed82c07cd/Rating?userId=null&userId=null' _______________________ DELETE /UserPlayedItems/{itemId} _______________________ 1. Test Case ID: emX7Vp - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-45cf60a2d5caae3d8debc2f6eec86441-ef0f35abec07f508-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserPlayedItems/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=null&userId=null' ____________________________ DELETE /Users/{userId} ____________________________ 1. Test Case ID: mEt9Gc - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-3778f64b3a75878e609177fb80e9b5b1-cd0b6fa542e87bc9-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/null%2Cnull ___________________ DELETE /Videos/{itemId}/AlternateSources ___________________ 1. Test Case ID: WM8bKz - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-4a1ad59a553075a139e2798464ab457f-d81050ee32fa81db-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/null%2Cnull/AlternateSources __________________ DELETE /Videos/{itemId}/Subtitles/{index} ___________________ 1. Test Case ID: A2OqVM - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"index":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-9c91f6a515845bcfa65e9c6eacdb2f19-a3154430c3bdf592-00"}` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/Subtitles/2147483648 2. Test Case ID: HkrUuy - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X DELETE -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805/Subtitles/11732 _______________________ GET /Albums/{itemId}/InstantMix ________________________ 1. Test Case ID: RC9Xtn - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-883dcc7c96ffdf781f8c9b665ae1cbc8-0b2d758028cec0ea-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Albums/e3e70682-c209-1cac-a29f-6fbed82c07cd/InstantMix?userId=null&userId=null' 2. Test Case ID: WQTWjo - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Albums/ba9c5cad-4ccd-8753-66bf-54fd50e04928/InstantMix?limit=310&enableImages=false&imageTypeLimit=221&enableImageTypes=Thumb&enableImageTypes=Profile&enableImageTypes=Box&enableImageTypes=Primary&enableImageTypes=Box&enableImageTypes=Menu&enableImageTypes=Screenshot&enableImageTypes=Logo&enableImageTypes=Banner&enableImageTypes=Screenshot&enableImageTypes=Art&userId=ea51ef99-4fd9-1e08-a85f-bdcd1ece5867&enableUserData=false' _________________________ GET /Albums/{itemId}/Similar _________________________ 1. Test Case ID: gAqpQ7 - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-bc5b2d32e1f4cdbea1b3be6dc6da807e-a94ba6dec37cc06a-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Albums/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?excludeArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&limit=-2147483648&fields=AirTime' 2. Test Case ID: FZUUGX - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-95791be8069d20bc8d27dd44baa632a8-bc7e2dfd11d1977e-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Albums/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?userId=null&userId=null' _________________________________ GET /Artists _________________________________ 1. Test Case ID: 0Yw9xS - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists?minCommunityRating=0&startIndex=-2147483648&limit=-2147483648&searchTerm=&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&filters=IsFolder&isFavorite=true&mediaTypes=Unknown&genres=&genreIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&officialRatings=&tags=&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&person=&personIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&personTypes=&studios=&studioIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&sortBy=Default&sortOrder=Ascending&enableImages=true&enableTotalRecordCount=true' 2. Test Case ID: mHnWi7 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists?minCommunityRating=0&startIndex=-2147483648&limit=-2147483648&searchTerm=&parentId=&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&filters=IsFolder&isFavorite=true&mediaTypes=Unknown&genres=&genreIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&officialRatings=&tags=&years=-2147483648&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&person=&personIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&personTypes=&studios=&studioIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&sortBy=Default&sortOrder=Ascending&enableImages=true&enableTotalRecordCount=true' 3. Test Case ID: fxv0ez - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `fields`, `limit`, `minCommunityRating` in query - violates `type` at /properties/fields (was array, became null) - violates `type` at /properties/limit (was integer, became object) - violates `type` at /properties/minCommunityRating (was number, became object) [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists?fields=null&limit=&minCommunityRating=' __________________________ GET /Artists/AlbumArtists ___________________________ 1. Test Case ID: BXaxR0 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/AlbumArtists?minCommunityRating=0&startIndex=-2147483648&limit=-2147483648&searchTerm=&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&filters=IsFolder&isFavorite=true&mediaTypes=Unknown&genres=&genreIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&officialRatings=&tags=&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&person=&personIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&personTypes=&studios=&studioIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&sortBy=Default&sortOrder=Ascending&enableImages=true&enableTotalRecordCount=true' 2. Test Case ID: CSGSN3 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/AlbumArtists?minCommunityRating=0&startIndex=-2147483648&limit=-2147483648&searchTerm=&parentId=&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&filters=IsFolder&isFavorite=true&mediaTypes=Unknown&genres=&genreIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&officialRatings=&tags=&years=-2147483648&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&person=&personIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&personTypes=&studios=&studioIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&sortBy=Default&sortOrder=Ascending&enableImages=true&enableTotalRecordCount=true' 3. Test Case ID: 3RRrur - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `includeItemTypes` in query - violates `enum` at /properties/includeItemTypes/items [200] OK: `{"Items":[{"Name":"Workbench","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"47f22f2b53c683ef75a37d1471c89428","ChannelId":null,"RunTimeTicks":30000000,"Type":"MusicArtist","UserData":{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":false,"Played":false,"Key":"Artist-Workbench","ItemId":"47f22f2b53c683ef75a37d1471c89428"},"ImageTags":{},"ImageBlurHashes":{},"LocationType":"FileSystem","MediaType":"Unknown"}],"TotalRecordCount":1,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/AlbumArtists?includeItemTypes=&enableImageTypes=Box&enableImageTypes=BoxRear&enableImageTypes=Banner&enableImageTypes=Art&enableImageTypes=BoxRear&enableImageTypes=Chapter&enableImageTypes=Menu&enableImageTypes=Banner&enableImageTypes=BoxRear&enableImageTypes=Banner&enableImageTypes=Logo&nameStartsWith=' 4. Test Case ID: uLwriI - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `limit`, `isFavorite` in query - violates `type` at /properties/limit (was integer, became array) - violates `type` at /properties/isFavorite (was boolean, became null) - Undocumented HTTP status code Received: 414 Documented: 200, 503, 401, 403 [414] URI Too Long: Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/AlbumArtists?nameStartsWithOrGreater=%C2%A0%C2%A1%07%C2%AD-&isFavorite=null&studioIds=4b964b22-f05f-166c-8ef1-782e1481d77c&studioIds=9beb3c33-31d8-1b07-b1f5-516a4e52ca15&studioIds=a7070e11-0a81-5a86-bc6a-fceb58e1aa91&studioIds=45444c5d-dd26-2aad-9563-8aa23a731bb9&studioIds=d66e5ec0-9f34-1d13-b879-abd1ca06cda0&studioIds=44a318ba-5ea9-557f-90e9-2afc0a679f63&studioIds=2dea7346-e587-342f-97dc-7dd883cbe60d&studioIds=29203ffa-d1af-3f84-a973-5a451ed3a5f3&studioIds=79621f39-6286-5528-8d4e-bba32db0505c&studioIds=e8995140-675e-4436-86b7-1d70b0288bfd&studioIds=85108daa-1132-491d-911c-bf96c3dac129&studioIds=f516a7a8-a3ee-2983-969d-f74a255c4ac5&studioIds=2995a704-921d-10c7-a5c7-f7d24fb78c81&studioIds=d3c9bb8f-e315-4677-a558-635082bcc0d3&studioIds=5361a02c-78bf-560f-acb4-8d55434796b4&studioIds=53c41ba6-a775-4310-b839-50b1c60518d6&nameStartsWith=%C2%9A%C3%B8Y3%F2%9B%B6%94%C3%B7%F2%99%9C%B6%3D&startIndex=25&years=1518&years=-14973121&excludeItemTypes=Person&parentId=fdd98173-6b6f-275f-89dc-5462f74b957c&minCommunityRating=2.7849012904650536e%2B16&personIds=90993f90-bb67-27f0-b66f-87777df4f291&personIds=c947b713-3d5e-593f-85eb-704a434505b6&personIds=48e328d4-de78-4d30-9308-ea085ab9e447&searchTerm=%C3%AD.l%C3%9CG%F0%9B%82%BA%F1%84%86%B9&officialRatings=%C3%A2%F0%B1%80%86SC%F3%8A%B0%A1%3B&officialRatings=q%11%F4%8C%89%94%C2%A8%C3%84&officialRatings=V%C2%93%C3%9F%F1%85%8A%B7&officialRatings=M%C3%9A%C3%B3%C2%82&officialRatings=&officialRatings=%C2%AD%C3%AA%C2%B9%C3%8FW%F2%BF%BB%90r%F1%BB%B0%AB&userId=c042e114-bb36-2e75-bc22-7516c4b5fa5e&sortOrder=Descending&sortOrder=Ascending&sortOrder=Ascending&sortOrder=Descending&sortOrder=Descending&enableImageTypes=Profile&enableImageTypes=Box&enableImageTypes=Banner&enableImageTypes=Chapter&enableImageTypes=Disc&enableImageTypes=Backdrop&enableImageTypes=Disc&person=%F2%BA%84%93&sortBy=DatePlayed&nameLessThan=%F0%9E%84%B4%C3%A9%C3%B4%C2%AD&enableTotalRecordCount=false&limit=%5B%27null%27%2C+%27%5D%C2%BC%5CU0010bc56k%C3%9A%5CU0005079d%5CU000cbb84%C3%A6%C2%B57W%5CU000b5f26~UC%5Cx9f%5CU00076118y%5Cx88v%C3%86%5Cx1e%C3%92%27%5D&limit=%7B%7D&limit=%7B%27%C2%A9%C3%B0%C2%AE%27%3A+%7B%27%C2%A6%27%3A+%27%C3%93s%C2%B5%C3%97u%27%2C+%27%C3%96%5E%5CU000d0419%2A%5Cxa0%27%3A+%27%5C%5C_a%5Cx8a5%5Cx89%5D%5Ct%5CU00054785_I%C3%B7%27%2C+%27%7C%C3%83%5Cx15~H%5CU0006c6fe%C2%A7%F0%90%83%AFz6%27%3A+%27x%40_D%5Cx9ca%F0%A1%BE%B1%5Cx17%27%7D%7D&limit=%5B%27false%27%2C+-2695%2C+%27%C3%90%C3%B5%27%5D&limit=%7B%27%C2%AE%5CU0005c228%C3%85%5Cx94%C3%B4%5Cx00%5CU000781fb%5Cx01%27%3A+%7B%7D%2C+%27MalformedMediaType%27%3A+%7B%27%F0%97%82%9CY%27%3A+%27z%C3%88%5CU000ce75e%5CU000fe9ad%27%7D%2C+%27%5Cr%5Cx8d%7D%C3%A5%C2%ACM%5Cx1at%27%3A+%5B%5D%7D&limit=%7B%27S%C2%B4k%5CU000844b6%C3%AA%C3%88%27%3A+%5B%27true%27%5D%2C+%27%5Cx19%5Cx107%5Cx9b%28%F0%AC%98%A0%27%3A+%5B1557422%2C+%7B%27%27%3A+%27false%27%2C+%27H%3B%C2%BC%27%3A+-6.9511141318049016e%2B16%7D%5D%2C+%27%27%3A+%7B%27%C2%AC%5C%5C%27%3A+%27null%27%7D%7D&limit=%5B%7B%7D%2C+%7B%27%5CU0005a8e2%5CU00052053%C3%95%27%3A+%27%27%2C+%271%5Cx9de%5Cx12%23%27%3A+%5B-1274%2C+30961439%2C+%27true%27%5D%7D%2C+%7B%27%5CU000b5def%5CU000bb8d6%27%3A+%27z%C3%99%C3%80%5Cx90O%27%7D%5D&limit=%5B%5D&limit=%7B%27%C2%A1H%27%3A+%5B-4.583780971092997e-266%2C+-374%5D%2C+%27%C3%8C%5Cx94%27%3A+%5B%5B%5D%2C+%7B%7D%2C+%5B%5D%5D%7D&limit=true&limit=%7B%7D&limit=false&limit=%5B%7B%27%C3%B6%5Cx05%5Cx82%5Cx9b%C3%9E%C2%B3%5CU000fb867%5Cx81%C3%87%C3%80+%5Cx07S%C3%B6%2Ab%5Cx84N%C3%90%5Cx02%C2%A4%2A%5Cx0f%27%3A+%27%27%2C+%27%5Cx18%5CU0008b7ea%27%3A+%27false%27%2C+%27%5Cxa0%27%3A+%27false%27%7D%2C+-50738944%2C+%270%2F0%27%5D&limit=%7B%27%5Cx00q%27%3A+%5B%5D%2C+%27%40%5CU000fe79e%5Cx83%C3%9FMB%27%3A+%7B%27%3Bj%5CU000afe47%C2%A2.%5CU000415ff%C3%AE%5Cx1b%27%3A+-6.9511141318049016e%2B16%2C+%27G%5CU0009f8f6%5CU00051f2b-%27%3A+5.996336143055756e%2B16%2C+%27%C3%A9%E9%BA%BE%27%3A+%27null%27%7D%2C+%27%5CU000f1a69%5CU000de772nq%27%3A+%5B%27null%27%5D%7D&limit=%5B%5D&limit=%7B%27%E4%99%85%5CU000f655f%27%3A+%27true%27%2C+%27%5CU00102b0a%C3%B9%5Cx0f%C2%B7k%5Cx8a%27%3A+%5B%7B%7D%5D%7D&limit=%7B%27%5Cx98%27%3A+%27null%27%7D&limit=%2BB&limit=-4.1548091285956424e%2B16&limit=%5B%5B%5D%2C+%5B%5D%2C+%7B%27%5Cx11%5CU000da8f3%5CU0009447c%27%3A+23656%7D%5D&limit=null&limit=%5B%5B%27null%27%5D%2C+%7B%27%27%3A+%27%C3%A3%5CU000ec78b%C3%8F%C3%97%27%2C+%27%7D%27%3A+%27%5CU0003d8c3%5Cx10%5Cx91Y%C3%8C%27%2C+%27%5Cx18%27%3A+2.7878996045071352e-89%7D%2C+%7B%27%3B%5B%60%27%3A+-5.951686191431631e%2B16%7D%5D&limit=%5B7.008910457518214e-205%2C+%5B-110151763318603002628073270804027015168%2C+-111%2C+%27%5Cx0e%27%5D%2C+-9.895630597206341e-138%5D&limit=6.714684282460685e%2B16&limit=%5B%27null%27%2C+%27%5D%C2%BC%5CU0010bc56k%C3%9A%5CU0005079d%5CU000cbb84%C3%A6%C2%B57W%5CU000b5f26~UC%5Cx9f%5CU00076118y%5Cx88v%C3%86%5Cx1e%C3%92%27%5D&limit=%7B%7D&limit=%7B%27%C2%A9%C3%B0%C2%AE%27%3A+%7B%27%C2%A6%27%3A+%27%C3%93s%C2%B5%C3%97u%27%2C+%27%C3%96%5E%5CU000d0419%2A%5Cxa0%27%3A+%27%5C%5C_a%5Cx8a5%5Cx89%5D%5Ct%5CU00054785_I%C3%B7%27%2C+%27%7C%C3%83%5Cx15~H%5CU0006c6fe%C2%A7%F0%90%83%AFz6%27%3A+%27x%40_D%5Cx9ca%F0%A1%BE%B1%5Cx17%27%7D%7D&limit=%5B%27false%27%2C+-2695%2C+%27%C3%90%C3%B5%27%5D&limit=%7B%27%C2%AE%5CU0005c228%C3%85%5Cx94%C3%B4%5Cx00%5CU000781fb%5Cx01%27%3A+%7B%7D%2C+%27MalformedMediaType%27%3A+%7B%27%F0%97%82%9CY%27%3A+%27z%C3%88%5CU000ce75e%5CU000fe9ad%27%7D%2C+%27%5Cr%5Cx8d%7D%C3%A5%C2%ACM%5Cx1at%27%3A+%5B%5D%7D&limit=%7B%27S%C2%B4k%5CU000844b6%C3%AA%C3%88%27%3A+%5B%27true%27%5D%2C+%27%5Cx19%5Cx107%5Cx9b%28%F0%AC%98%A0%27%3A+%5B1557422%2C+%7B%27%27%3A+%27false%27%2C+%27H%3B%C2%BC%27%3A+-6.9511141318049016e%2B16%7D%5D%2C+%27%27%3A+%7B%27%C2%AC%5C%5C%27%3A+%27null%27%7D%7D&limit=%5B%7B%7D%2C+%7B%27%5CU0005a8e2%5CU00052053%C3%95%27%3A+%27%27%2C+%271%5Cx9de%5Cx12%23%27%3A+%5B-1274%2C+30961439%2C+%27true%27%5D%7D%2C+%7B%27%5CU000b5def%5CU000bb8d6%27%3A+%27z%C3%99%C3%80%5Cx90O%27%7D%5D&limit=%5B%5D&limit=%7B%27%C2%A1H%27%3A+%5B-4.583780971092997e-266%2C+-374%5D%2C+%27%C3%8C%5Cx94%27%3A+%5B%5B%5D%2C+%7B%7D%2C+%5B%5D%5D%7D&limit=true&limit=%7B%7D&limit=false&limit=%5B%7B%27%C3%B6%5Cx05%5Cx82%5Cx9b%C3%9E%C2%B3%5CU000fb867%5Cx81%C3%87%C3%80+%5Cx07S%C3%B6%2Ab%5Cx84N%C3%90%5Cx02%C2%A4%2A%5Cx0f%27%3A+%27%27%2C+%27%5Cx18%5CU0008b7ea%27%3A+%27false%27%2C+%27%5Cxa0%27%3A+%27false%27%7D%2C+-50738944%2C+%270%2F0%27%5D&limit=%7B%27%5Cx00q%27%3A+%5B%5D%2C+%27%40%5CU000fe79e%5Cx83%C3%9FMB%27%3A+%7B%27%3Bj%5CU000afe47%C2%A2.%5CU000415ff%C3%AE%5Cx1b%27%3A+-6.9511141318049016e%2B16%2C+%27G%5CU0009f8f6%5CU00051f2b-%27%3A+5.996336143055756e%2B16%2C+%27%C3%A9%E9%BA%BE%27%3A+%27null%27%7D%2C+%27%5CU000f1a69%5CU000de772nq%27%3A+%5B%27null%27%5D%7D&limit=%5B%5D&limit=%7B%27%E4%99%85%5CU000f655f%27%3A+%27true%27%2C+%27%5CU00102b0a%C3%B9%5Cx0f%C2%B7k%5Cx8a%27%3A+%5B%7B%7D%5D%7D&limit=%7B%27%5Cx98%27%3A+%27null%27%7D&limit=%2BB&limit=-4.1548091285956424e%2B16&limit=%5B%5B%5D%2C+%5B%5D%2C+%7B%27%5Cx11%5CU000da8f3%5CU0009447c%27%3A+23656%7D%5D&limit=null&limit=%5B%5B%27null%27%5D%2C+%7B%27%27%3A+%27%C3%A3%5CU000ec78b%C3%8F%C3%97%27%2C+%27%7D%27%3A+%27%5CU0003d8c3%5Cx10%5Cx91Y%C3%8C%27%2C+%27%5Cx18%27%3A+2.7878996045071352e-89%7D%2C+%7B%27%3B%5B%60%27%3A+-5.951686191431631e%2B16%7D%5D&limit=%5B7.008910457518214e-205%2C+%5B-110151763318603002628073270804027015168%2C+-111%2C+%27%5Cx0e%27%5D%2C+-9.895630597206341e-138%5D&limit=6.714684282460685e%2B16&limit=%5B%5D&limit=%7B%27%F0%A2%9D%A1%C3%A6%C3%B2%C3%8B%5Cx9dO%C3%BB%27%3A+%27%C3%92%5CU0009f1ae%C3%ABzI%5CU00033841f%5Cx01%5Cx7f%5Cx10%C2%A1%C3%86%5CU00075d41v%5CU000ef265%26B%5Cx9e%C3%9C+%27%2C+%27z%C3%AE%5CU0009ed82%C3%93%C3%8D%5CU000f2347%5CU000b44a0%C2%A2%5Cx07g%C2%B9m%C2%A4%5Cx81%5Cx12%C3%94%27%3A+211252173318%7D&limit=%5B%27false%27%5D&limit=-3.7903787919653074e-50&limit=&limit=%C2%918%C2%AE&limit=%F4%8E%B5%8A%C3%A7%C2%99&limit=%C2%AD%15%1D%1EaX&limit=&limit=-9.147462602907653e%2B48&limit=true&imageTypeLimit=30561&enableImages=true&personTypes=&personTypes=w%C3%B1%C2%9E%C2%83&personTypes=%C3%BE&personTypes=%F0%9D%91%BB%F0%9D%92%89%F0%9D%92%86+%F0%9D%92%92%F0%9D%92%96%F0%9D%92%8A%F0%9D%92%84%F0%9D%92%8C+%F0%9D%92%83%F0%9D%92%93%F0%9D%92%90%F0%9D%92%98%F0%9D%92%8F+%F0%9D%92%87%F0%9D%92%90%F0%9D%92%99+%F0%9D%92%8B%F0%9D%92%96%F0%9D%92%8E%F0%9D%92%91%F0%9D%92%94+%F0%9D%92%90%F0%9D%92%97%F0%9D%92%86%F0%9D%92%93+%F0%9D%92%95%F0%9D%92%89%F0%9D%92%86+%F0%9D%92%8D%F0%9D%92%82%F0%9D%92%9B%F0%9D%92%9A+%F0%9D%92%85%F0%9D%92%90%F0%9D%92%88&personTypes=&personTypes=6%0B%C3%81&personTypes=B&personTypes=%E1%BA%B7&personTypes=&personTypes=%05%C2%A9&personTypes=%C3%97%C3%A4%C3%A3%C3%99&genres=%EA%AE%91%C2%A0%C3%BE%F2%A6%AA%8B%C3%B1&genres=%7F%C2%BA&genres=%00%C2%93%2F%0A%F1%AA%81%AB%3A%EE%A9%8B%C2%96%C2%AAH%C2%81%F3%AB%B5%B6&genres=%F3%B4%BA%8D%F0%AB%9C%84%1B%C2%98%C2%9D%C3%BA%0E%C2%A8&genres=%22%C2%8A%0A&genres=%2B0.0&genres=%7D%C2%9B%28&fields=MediaSources&studios=%12%C2%95&studios=%F3%88%94%BA%C3%A6%F1%B6%B6%A1q1R&studios=e%C3%9Aa%C2%83&studios=L%C2%B7&tags=%C2%A4%F2%AC%BE%ACY%60%F0%AC%82%A4%F1%A6%BC%95D%F1%AF%B0%A9%F4%8D%91%89&tags=%F3%9E%A4%A5%F3%B0%AE%B7&tags=%C3%AD%08%C3%8D&tags=%21%06%C3%8F%C2%BBI&tags=%C2%9A&tags=%F3%B2%AA%88%40%C3%A6%F1%BE%83%A2&tags=&tags=%C3%8C&tags=%C3%A4&tags=%C3%8F%F0%A2%A6%A9%F0%99%B2%B4%C3%98&filters=IsFolder&filters=IsResumable&filters=IsNotFolder&filters=IsFavoriteOrLikes&filters=IsFolder&filters=IsResumable&filters=IsFavorite&filters=Likes&filters=Likes&includeItemTypes=MusicArtist&includeItemTypes=MusicAlbum&genreIds=8759a656-06b8-192d-b5f7-22c81b3b8a06&genreIds=c0ef38ad-f998-3bff-ad4c-a57dd73c6920' _______________________ GET /Artists/{itemId}/InstantMix _______________________ 1. Test Case ID: UlARQD - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-fd9510a6197d45e2735448b67e53a351-4040eedbc62d68ce-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/e3e70682-c209-1cac-a29f-6fbed82c07cd/InstantMix?userId=null&userId=null' ________________________ GET /Artists/{itemId}/Similar _________________________ 1. Test Case ID: Cp9Vg0 - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-82d685bef406f8e6b4e86d1dd021981a-c18bb2520d1c8c64-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?excludeArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&limit=-2147483648&fields=AirTime' 2. Test Case ID: I0zx6S - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-941de2cb1fb302d06b2ba29c5d5defc8-4a103237377e27e4-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?userId=null&userId=null' 3. Test Case ID: csNDry - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `format` at /properties/excludeArtistIds/items - query: violates `enum` at /properties/fields/items - query: violates `format` at /properties/userId - header: violates `required` (was Authorization) [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/Similar?userId=&fields=&excludeArtistIds=&excludeArtistIds=&excludeArtistIds=&excludeArtistIds=&excludeArtistIds=&excludeArtistIds=&excludeArtistIds=&excludeArtistIds=&excludeArtistIds=&excludeArtistIds=&limit=3' _____________________________ GET /Artists/{name} ______________________________ 1. Test Case ID: M4P7e7 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [200] OK: `{"Name":"0","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"25a4e804215550726dd616913e32ba7c","Etag":"543b6ca4c9f21c87d81daf7a932499c0","DateCreated":"2026-10-10T08:00:51.5681282Z","CanDelete":false,"CanDownload":false,"SortName":"0000000000","ExternalUrls":[],"Path":"/config/metadata/artists/0","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"PlayAccess":"Full","RemoteTrailers":[],"ProviderIds":{},"ParentId":null,"Type":"MusicArtist","People":[],"Studios":[],"GenreItems":[]," // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/0?userId=' 2. Test Case ID: 1rqI5H - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-441767941fc78d10377eb49ea750a4c9-030ae33e00202d65-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/0?userId=null&userId=null' _____________ GET /Artists/{name}/Images/{imageType}/{imageIndex} ______________ 1. Test Case ID: fJjojw - Response violates schema "0 does not have an image of type Primary" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "0 does not have an image of type Primary" [404] Not Found: `"0 does not have an image of type Primary"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/0/Images/Primary/-2147483648?tag=&format=Bmp&maxWidth=-2147483648&maxHeight=-2147483648&percentPlayed=0&unplayedCount=-2147483648&height=-2147483648&quality=-2147483648&fillWidth=-2147483648&fillHeight=-2147483648&blur=-2147483648&backgroundColor=&foregroundLayer=' 2. Test Case ID: aPgFdn - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-4119cfdad0641928bd1e75855d7a4176-d7b256e553b3fdc7-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/0/Images/Primary/-2147483648?width=2147483648' __________________________ GET /Audio/{itemId}/Lyrics __________________________ 1. Test Case ID: 2WII3k - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-23fce07ad772461ffa8d66fcb6940572-66399319df2d3fa7-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Audio/null%2Cnull/Lyrics ___________________ GET /Audio/{itemId}/RemoteSearch/Lyrics ____________________ 1. Test Case ID: bmFnOE - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-bdd215dedcde1a2e3bad956c196c00f8-ab5f8394333ec727-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Audio/null%2Cnull/RemoteSearch/Lyrics __________________________ GET /Audio/{itemId}/stream __________________________ 1. Test Case ID: nrX5eu - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream?container=&static=true¶ms=&tag=&deviceProfileId=&playSessionId=%5BFiltered%5D&segmentContainer=&segmentLength=-2147483648&minSegments=-2147483648&mediaSourceId=&deviceId=&audioCodec=&enableAutoStreamCopy=true&allowVideoStreamCopy=true&allowAudioStreamCopy=true&audioSampleRate=-2147483648&maxAudioBitDepth=-2147483648&audioBitRate=-2147483648&audioChannels=-2147483648&maxAudioChannels=-2147483648&profile=&level=0&framerate=0&maxFramerate=0©Timestamps=true&startTimeTicks=-9223372036854775808&height=-2147483648&videoBitRate=-2147483648&subtitleStreamIndex=-2147483648&subtitleMethod=Encode&maxRefFrames=-2147483648&maxVideoBitDepth=-2147483648&requireAvc=true&deInterlace=true&requireNonAnamorphic=true&transcodingMaxAudioChannels=-2147483648&cpuCoreLimit=-2147483648&liveStreamId=&enableMpegtsM2TsMode=true&videoCodec=&subtitleCodec=&transcodeReasons=&audioStreamIndex=-2147483648&videoStreamIndex=-2147483648&context=Streaming&enableAudioVbrEncoding=true' 2. Test Case ID: DVy9dV - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-83ce155f3838d915cfd15a503ba19898-5501f37e3e6d3e74-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream?width=2147483648' 3. Test Case ID: Jsrv5K - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream?mediaSourceId=f6108439a07311ab057b17a8246e543a' ____________________ GET /Audio/{itemId}/stream.{container} ____________________ 1. Test Case ID: DvpBv6 - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream.0?static=true¶ms=&tag=&deviceProfileId=&playSessionId=%5BFiltered%5D&segmentContainer=&segmentLength=-2147483648&minSegments=-2147483648&mediaSourceId=&deviceId=&audioCodec=&enableAutoStreamCopy=true&allowVideoStreamCopy=true&allowAudioStreamCopy=true&audioSampleRate=-2147483648&maxAudioBitDepth=-2147483648&audioBitRate=-2147483648&audioChannels=-2147483648&maxAudioChannels=-2147483648&profile=&level=0&framerate=0&maxFramerate=0©Timestamps=true&startTimeTicks=-9223372036854775808&height=-2147483648&videoBitRate=-2147483648&subtitleStreamIndex=-2147483648&subtitleMethod=Encode&maxRefFrames=-2147483648&maxVideoBitDepth=-2147483648&requireAvc=true&deInterlace=true&requireNonAnamorphic=true&transcodingMaxAudioChannels=-2147483648&cpuCoreLimit=-2147483648&liveStreamId=&enableMpegtsM2TsMode=true&videoCodec=&subtitleCodec=&transcodeReasons=&audioStreamIndex=-2147483648&videoStreamIndex=-2147483648&context=Streaming&enableAudioVbrEncoding=true' 2. Test Case ID: zzUsGI - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-1d2e32151d58b5869d1264670bce7ac8-47aeddc46090dd28-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream.0?width=2147483648' 3. Test Case ID: qeoILP - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream.mp3?mediaSourceId=f6108439a07311ab057b17a8246e543a' ________________________ GET /Audio/{itemId}/universal _________________________ 1. Test Case ID: 0sTpgZ - Undocumented HTTP status code Received: 400 Documented: 200, 302, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-1f76f92f51e08c0e855937cd6e34148f-b1cdde3bbf95e3bb-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/universal?userId=null&userId=null' 2. Test Case ID: SfUCtF - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/universal?mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=workbench&userId=ff53c59634c440fc88ea6fcb6bedc289' 3. Test Case ID: lvD44J - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 302, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/cc7e13db-3fa0-bede-b991-44e11664c3a4/universal?enableRedirection=true&deviceId=95979dc6ff37723f00ca5ddcf92dc7e5&container=%F2%B8%BA%8F%C2%84&container=%C2%A8%C3%94%C3%88&container=&container=%C2%98%C3%AE&container=Y%F1%BC%8E%BB%C3%8B%3F%C2%BB%F1%9A%87%A8%C3%8A%C2%9B%F3%BC%AC%B3%C2%8BW%C3%BF_&container=%C2%92%C3%80&container=%C2%82%C2%BE%C3%96' _____________________________ GET /Backup/Manifest _____________________________ 1. Test Case ID: efG4aS - Undocumented HTTP status code Received: 400 Documented: 200, 204, 404, 403, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"path":["A value for the \u0027path\u0027 parameter or property was not provided."]},"traceId":"00-14bc7ad23ce5c33fb63c757d43bc0bd9-e385e5242f8b8d63-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Backup/Manifest 2. Test Case ID: D6KnTH - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"path":["The path field is required."]},"traceId":"00-270d37bc912932dcf46ea68843ec8dab-94bb49be193b3b5c-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Backup/Manifest?path=' __________________________ GET /Branding/Splashscreen __________________________ 1. Test Case ID: 4rgO9t - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-98a3517b99ed0aacf0b6c35104e6fccf-32d437dfa78c3cc7-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Branding/Splashscreen?tag=' ________________________________ GET /Channels _________________________________ 1. Test Case ID: 4TeoqO - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Channels?startIndex=-2147483648&limit=-2147483648&supportsLatestItems=true&supportsMediaDeletion=true&isFavorite=true' 2. Test Case ID: o8QLNY - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - userId: Value not matching the 'uuid' format [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Channels?userId=' __________________________ GET /Channels/Items/Latest __________________________ 1. Test Case ID: FvZqas - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-cc6219906b2da5a240941ce43fb900cf-d01fa201e502deb9-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Channels/Items/Latest?userId=null&userId=null' 2. Test Case ID: Tk00oK - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Channels/Items/Latest?channelIds=0e22c762-3f45-3118-8a9e-6af19afb0071&channelIds=371850cf-0b33-4f8b-a8db-96cb417d0352&channelIds=0ae418f2-ff7a-19c9-81f5-cb74f603ebc9&filters=Likes&filters=Likes&filters=Likes&filters=IsPlayed&filters=Likes&filters=Likes&filters=Likes&filters=IsPlayed&filters=IsUnplayed&limit=0&startIndex=0&userId=ff53c59634c440fc88ea6fcb6bedc289' 3. Test Case ID: 8jdkMm - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `filters` in query - violates `enum` at /properties/filters/items [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":922}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Channels/Items/Latest?fields=Genres&startIndex=922&channelIds=99b4b1f2-4613-43d9-8d04-b39a92040c2c&channelIds=e24b9ed3-c84d-14a9-9e62-1e944bcfa116&limit=44981521&filters=%C3%BA%7B%C2%9DR%11%C2%BD&filters=%10%C3%93%C2%A6%C3%A3&userId=4b6e382c-bafc-104d-9a17-269ea431817b' ______________________ GET /Channels/{channelId}/Features ______________________ 1. Test Case ID: n1YwZe - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"channelId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-02ae318d810c489abac6702f4b9b7f94-2db5e0ee096e96fa-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Channels/null%2Cnull/Features 2. Test Case ID: FvxQdB - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Channels/e3e70682-c209-1cac-a29f-6fbed82c07cd/Features _______________________ GET /Channels/{channelId}/Items ________________________ 1. Test Case ID: RPblJo - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Channels/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?folderId=e3e70682-c209-1cac-a29f-6fbed82c07cd&startIndex=-2147483648&limit=-2147483648&sortOrder=Ascending&filters=IsFolder&sortBy=Default&fields=AirTime' _________________________________ GET /Devices _________________________________ 1. Test Case ID: hq3oFS - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [200] OK: `{"Items":[{"Name":"workbench","Id":"workbench","LastUserName":"admin","AppName":"workbench","AppVersion":"1","LastUserId":"e9a116328e0f47c5bef9217cb9d1750a","DateLastActivity":"2026-10-10T08:00:49.9760268Z","Capabilities":{"PlayableMediaTypes":[],"SupportedCommands":[],"SupportsMediaControl":false,"SupportsPersistentIdentifier":true}},{"Name":"hooks","Id":"hooks","LastUserName":"admin","AppName":"workbench","AppVersion":"1","LastUserId":"e9a116328e0f47c5bef9217cb9d1750a","DateLastActivity":"2026-10-10T08:00 // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Devices?userId=' 2. Test Case ID: DVwpH4 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-0204f0d973b7b3bf5dbb2d0fa2feb99f-0c6a345fe1d69020-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Devices?userId=null&userId=null' 3. Test Case ID: 7EoVwO - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Devices?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' ______________________________ GET /Devices/Info _______________________________ 1. Test Case ID: KXyPhT - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"id":["The id field is required."]},"traceId":"00-a23c48fece3de047507a94831d46433c-9d462cc886ffe829-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Devices/Info 2. Test Case ID: NQxHKf - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"id":["The id field is required."]},"traceId":"00-98429a0f6fe2d7f5e7e4d2076163d17d-6563735b0f0c5ddf-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Devices/Info?id=' _____________________________ GET /Devices/Options _____________________________ 1. Test Case ID: yDBTAx - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"id":["The id field is required."]},"traceId":"00-84aaa8d708af2cb05bde518a2a44acb9-d0e19a97e7b239e5-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Devices/Options 2. Test Case ID: 5DkYZH - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"id":["The id field is required."]},"traceId":"00-bcf343514c2fe44e4ce898b2755b74aa-334f35b9c28f7045-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Devices/Options?id=' ________________ GET /DisplayPreferences/{displayPreferencesId} ________________ 1. Test Case ID: itVXaU - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"client":["The client field is required."]},"traceId":"00-34530975e6967cd2f20a1f403e909da8-df51666225fd8b38-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/DisplayPreferences/0?client=' 2. Test Case ID: wjUGu5 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/DisplayPreferences/0?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&client=00' ___________________ GET /Environment/DefaultDirectoryBrowser ___________________ 1. Test Case ID: T0Fg9B - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Environment/DefaultDirectoryBrowser` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `{}` Reproduce with: curl -X GET http://0.0.0.0:35675/Environment/DefaultDirectoryBrowser ______________________ GET /Environment/DirectoryContents ______________________ 1. Test Case ID: vwUs4t - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"path":["The path field is required."],"includeFiles":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-b92a07fe315c50e68768d009c431d680-5f5ca999c64f81ee-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Environment/DirectoryContents?includeFiles=null&includeFiles=null&path=' 2. Test Case ID: 5VoKWd - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"path":["The path field is required."]},"traceId":"00-5a9e2f88ad5847ae05f9327b8aec0e8b-47cb66cfcc969929-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Environment/DirectoryContents?path=&includeFiles=true' 3. Test Case ID: DBT4jJ - Missing header not rejected Got 400 when missing required 'Authorization' header, expected 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"path":["The path field is required."]},"traceId":"00-29016c40134c4b3b4f167f7146f09060-0c76cb2e02e860b1-00"}` Reproduce with: curl -X GET 'http://0.0.0.0:35675/Environment/DirectoryContents?path=&includeFiles=true&includeDirectories=true' 4. Test Case ID: UORqJu - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Environment/DirectoryContents?path=0&includeFiles=true' 5. Test Case ID: fqq4Kv - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Environment/DirectoryContents` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `Authorization` in header - violates `required` (was Authorization) [200] OK: `[]` Reproduce with: curl -X GET 'http://0.0.0.0:35675/Environment/DirectoryContents?path=%2Fcache%2Ftranscodes' 6. Test Case ID: tPXKr2 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Environment/DirectoryContents?path=%E1%B9%B0%CC%BA%CC%BA%CC%95o%CD%9E+%CC%B7i%CC%B2%CC%AC%CD%87%CC%AA%CD%99n%CC%9D%CC%97%CD%95v%CC%9F%CC%9C%CC%98%CC%A6%CD%9Fo%CC%B6%CC%99%CC%B0%CC%A0k%C3%A8%CD%9A%CC%AE%CC%BA%CC%AA%CC%B9%CC%B1%CC%A4+%CC%96t%CC%9D%CD%95%CC%B3%CC%A3%CC%BB%CC%AA%CD%9Eh%CC%BC%CD%93%CC%B2%CC%A6%CC%B3%CC%98%CC%B2e%CD%87%CC%A3%CC%B0%CC%A6%CC%AC%CD%8E+%CC%A2%CC%BC%CC%BB%CC%B1%CC%98h%CD%9A%CD%8E%CD%99%CC%9C%CC%A3%CC%B2%CD%85i%CC%A6%CC%B2%CC%A3%CC%B0%CC%A4v%CC%BB%CD%8De%CC%BA%CC%AD%CC%B3%CC%AA%CC%B0-m%CC%A2i%CD%85n%CC%96%CC%BA%CC%9E%CC%B2%CC%AF%CC%B0d%CC%B5%CC%BC%CC%9F%CD%99%CC%A9%CC%BC%CC%98%CC%B3+%CC%9E%CC%A5%CC%B1%CC%B3%CC%ADr%CC%9B%CC%97%CC%98e%CD%99p%CD%A0r%CC%BC%CC%9E%CC%BB%CC%AD%CC%97e%CC%BA%CC%A0%CC%A3%CD%9Fs%CC%98%CD%87%CC%B3%CD%8D%CC%9D%CD%89e%CD%89%CC%A5%CC%AF%CC%9E%CC%B2%CD%9A%CC%AC%CD%9C%C7%B9%CC%AC%CD%8E%CD%8E%CC%9F%CC%96%CD%87%CC%A4t%CD%8D%CC%AC%CC%A4%CD%93%CC%BC%CC%AD%CD%98%CD%85i%CC%AA%CC%B1n%CD%A0g%CC%B4%CD%89+%CD%8F%CD%89%CD%85c%CC%AC%CC%9Fh%CD%A1a%CC%AB%CC%BB%CC%AF%CD%98o%CC%AB%CC%9F%CC%96%CD%8D%CC%99%CC%9D%CD%89s%CC%97%CC%A6%CC%B2.%CC%A8%CC%B9%CD%88%CC%A3&includeFiles=true&includeDirectories=true' ___________________________ GET /Environment/Drives ____________________________ 1. Test Case ID: sWcdra - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Environment/Drives` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `[{"Name":"/","Path":"/","Type":"Directory"},{"Name":"/config","Path":"/config","Type":"Directory"},{"Name":"/cache","Path":"/cache","Type":"Directory"}]` Reproduce with: curl -X GET http://0.0.0.0:35675/Environment/Drives _________________________ GET /Environment/ParentPath __________________________ 1. Test Case ID: kJsSU8 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"path":["The path field is required."]},"traceId":"00-e674a0af182b1052d5ae2cc70e1a9256-4541dbd61119da4b-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Environment/ParentPath 2. Test Case ID: Lhx4xW - Missing header not rejected Got 400 when missing required 'Authorization' header, expected 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"path":["The path field is required."]},"traceId":"00-0339f2eb235f6c01aee1d62c13f8acd6-878ca03617515833-00"}` Reproduce with: curl -X GET 'http://0.0.0.0:35675/Environment/ParentPath?path=' 3. Test Case ID: nzk5qq - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"path":["The path field is required."]},"traceId":"00-deb43c8983ab3021f130092e51207118-e9444e9fbbff7a4c-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Environment/ParentPath?path=' 4. Test Case ID: z7BPl8 - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Environment/ParentPath` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header [200] OK: `""` Reproduce with: curl -X GET 'http://0.0.0.0:35675/Environment/ParentPath?path=0' 5. Test Case ID: W7Qtmb - Response violates schema null is not of type "string" Validated against the response schema for status code 200. Schema: { "type": "string" } Value: null [200] OK: `null` Reproduce with: curl -X GET 'http://0.0.0.0:35675/Environment/ParentPath?path=%2F' ________________________ GET /FallbackFont/Fonts/{name} ________________________ 1. Test Case ID: TzI6yO - Missing Content-Type header The following media types are documented in the schema: - `font/*` [200] OK: Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/FallbackFont/Fonts/0 _________________________________ GET /Genres __________________________________ 1. Test Case ID: oOfc1d - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres?startIndex=-2147483648&limit=-2147483648&searchTerm=&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&isFavorite=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&sortBy=Default&sortOrder=Ascending&enableImages=true&enableTotalRecordCount=true' 2. Test Case ID: m7LG4t - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres?startIndex=-2147483648&limit=-2147483648&searchTerm=&parentId=&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&isFavorite=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&sortBy=Default&sortOrder=Ascending&enableImages=true&enableTotalRecordCount=true' 3. Test Case ID: AdXo7o - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `enableImages` in query - violates `type` at /properties/enableImages (was boolean, became string) [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres?enableImages=' ___________________________ GET /Genres/{genreName} ____________________________ 1. Test Case ID: 1e3R9P - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [200] OK: `{"Name":"0","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"0f6c23773dabf4bc9eef76a50b25901c","Etag":"543b6ca4c9f21c87d81daf7a932499c0","DateCreated":"2026-10-10T08:00:52.8791416Z","CanDelete":false,"CanDownload":false,"SortName":"0000000000","ExternalUrls":[],"Path":"/config/metadata/Genre/0","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"PlayAccess":"Full","RemoteTrailers":[],"ProviderIds":{},"ParentId":null,"Type":"Genre","People":[],"Studios":[],"GenreItems":[],"LocalTra // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres/0?userId=' 2. Test Case ID: udPbLf - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-94f9f9c05a2df40156a8e95f8a7caa86-b036518634454974-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres/0?userId=null&userId=null' ____________________ GET /Genres/{name}/Images/{imageType} _____________________ 1. Test Case ID: YzhQpd - Response violates schema "0 does not have an image of type Primary" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "0 does not have an image of type Primary" [404] Not Found: `"0 does not have an image of type Primary"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres/0/Images/Primary?tag=&format=Bmp&maxWidth=-2147483648&maxHeight=-2147483648&percentPlayed=0&unplayedCount=-2147483648&height=-2147483648&quality=-2147483648&fillWidth=-2147483648&fillHeight=-2147483648&blur=-2147483648&backgroundColor=&foregroundLayer=&imageIndex=-2147483648' 2. Test Case ID: 4ntLVq - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-5dee0ae77fb9a374e152e9f1361b696e-a9a7e158c8c6782b-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres/0/Images/Primary?width=2147483648' ______________ GET /Genres/{name}/Images/{imageType}/{imageIndex} ______________ 1. Test Case ID: 1EkE8B - Response violates schema "0 does not have an image of type Primary" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "0 does not have an image of type Primary" [404] Not Found: `"0 does not have an image of type Primary"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres/0/Images/Primary/-2147483648?tag=&format=Bmp&maxWidth=-2147483648&maxHeight=-2147483648&percentPlayed=0&unplayedCount=-2147483648&height=-2147483648&quality=-2147483648&fillWidth=-2147483648&fillHeight=-2147483648&blur=-2147483648&backgroundColor=&foregroundLayer=' 2. Test Case ID: 9VPlpW - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-929edad70807700ef10bfd667b6ccd96-c48b088c00d34510-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres/0/Images/Primary/-2147483648?width=2147483648' 3. Test Case ID: 0IY9Sl - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."]},"traceId":"00-08fd3f707f60d6793dce1fcaeaf0743f-8e94fd90bb7758f2-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Genres/%0A/Images/Primary/56396 __________________________________ GET /Items __________________________________ 1. Test Case ID: Td9J7u - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&maxOfficialRating=&hasThemeSong=true&hasThemeVideo=true&hasSubtitles=true&hasSpecialFeature=true&hasTrailer=true&adjacentTo=e3e70682-c209-1cac-a29f-6fbed82c07cd&indexNumber=-2147483648&parentIndexNumber=-2147483648&hasParentalRating=true&isHd=true&is4K=true&locationTypes=FileSystem&excludeLocationTypes=FileSystem&isMissing=true&isUnaired=true&minCommunityRating=0&minCriticRating=0&minPremiereDate=2000-01-01T00%3A00%3A00Z&minDateLastSaved=2000-01-01T00%3A00%3A00Z&minDateLastSavedForUser=2000-01-01T00%3A00%3A00Z&maxPremiereDate=2000-01-01T00%3A00%3A00Z&hasOverview=true&hasImdbId=true&hasTmdbId=true&hasTvdbId=true&isMovie=true&isSeries=true&isNews=true&isKids=true&isSports=true&excludeItemIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&startIndex=-2147483648&limit=-2147483648&recursive=true&searchTerm=&sortOrder=Ascending&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&filters=IsFolder&isFavorite=true&mediaTypes=Unknown&imageTypes=Primary&sortBy=Default&isPlayed=true&genres=&officialRatings=&tags=&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&person=&personIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&personTypes=&studios=&artists=&excludeArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&artistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&albumArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&contributingArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&albums=&albumIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&ids=e3e70682-c209-1cac-a29f-6fbed82c07cd&minOfficialRating=&isLocked=true&isPlaceHolder=true&hasOfficialRating=true&collapseBoxSetItems=true&minWidth=-2147483648&minHeight=-2147483648&maxWidth=-2147483648&maxHeight=-2147483648&is3D=true&seriesStatus=Continuing&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&studioIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&genreIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&audioLanguages=&subtitleLanguages=&enableTotalRecordCount=true&enableImages=true' 2. Test Case ID: nbjzxl - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items?maxOfficialRating=&hasThemeSong=true&hasThemeVideo=true&hasSubtitles=true&hasSpecialFeature=true&hasTrailer=true&adjacentTo=e3e70682-c209-1cac-a29f-6fbed82c07cd&indexNumber=-2147483648&parentIndexNumber=-2147483648&hasParentalRating=true&isHd=true&is4K=true&locationTypes=FileSystem&excludeLocationTypes=FileSystem&isMissing=true&isUnaired=true&minCommunityRating=0&minCriticRating=0&minPremiereDate=2000-01-01T00%3A00%3A00Z&minDateLastSaved=2000-01-01T00%3A00%3A00Z&minDateLastSavedForUser=2000-01-01T00%3A00%3A00Z&maxPremiereDate=2000-01-01T00%3A00%3A00Z&hasOverview=true&hasImdbId=true&hasTmdbId=true&hasTvdbId=true&isMovie=true&isSeries=true&isNews=true&isKids=true&isSports=true&excludeItemIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&startIndex=-2147483648&limit=-2147483648&recursive=true&searchTerm=&sortOrder=Ascending&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&filters=IsFolder&isFavorite=true&mediaTypes=Unknown&imageTypes=Primary&sortBy=Default&isPlayed=true&genres=&officialRatings=&tags=&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&person=&personIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&personTypes=&studios=&artists=&excludeArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&artistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&albumArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&contributingArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&albums=&albumIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&ids=e3e70682-c209-1cac-a29f-6fbed82c07cd&minOfficialRating=&isLocked=true&isPlaceHolder=true&hasOfficialRating=true&collapseBoxSetItems=true&minWidth=-2147483648&minHeight=-2147483648&maxWidth=-2147483648&maxHeight=-2147483648&is3D=true&seriesStatus=Continuing&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&studioIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&genreIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&audioLanguages=&subtitleLanguages=&enableTotalRecordCount=true&enableImages=true' 3. Test Case ID: wPuyGE - Response violates schema (3 violations) -58800 is not of type "string" Validated against the response schema for status code 200. Schema at /components/schemas/MediaType: { "type": "string", "enum": [ "Unknown", "Video", "Audio", "Photo", "Book" ], "description": "Media types." } Value: -58800 -58800 is not one of "Unknown", "Video" or 3 other candidates Validated against the response schema for status code 200. Schema at /components/schemas/BaseItemDto/properties/MediaType: { "enum": [ "Unknown", "Video", "Audio", "Photo", "Book" ], "allOf": [ { "$ref": "#/components/schemas/MediaType" } ], "description": "Media types.", "default": "Unknown" } Value: -58800 -58800 is not one of "Unknown", "Video" or 3 other candidates Validated against the response schema for status code 200. Schema at /components/schemas/MediaType: { "enum": [ "Unknown", "Video", "Audio", "Photo", "Book" ], "type": "string", "description": "Media types." } Value: -58800 [200] OK: `{"Items":[{"Name":"Tone","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"9f0a65a3f0f79088dc28dd8cfda10b42","HasLyrics":false,"Container":"mp3","PremiereDate":"0001-01-01T00:00:00.0000000Z","ChannelId":null,"RunTimeTicks":30000000,"IsFolder":false,"Type":"Audio","UserData":{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":true,"Played":false,"Key":"9f0a65a3-f0f7-9088-dc28-dd8cfda10b42","ItemId":"9f0a65a3f0f79088dc28dd8cfda10b42"},"Artists":["Workbench"],"ArtistItems":[{"Name":"Workbench","Id":"47f22f // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items?imageTypeLimit=2147483647&nameStartsWithOrGreater=%3DW%F2%86%B7%97' 4. Test Case ID: wo56OX - Response violates schema -58800 is not valid under any of the schemas listed in the 'anyOf' keyword Validated against the response schema for status code 200. Schema at /components/schemas/BaseItemDto/properties/CollectionType: { "anyOf": [ { "enum": [ "unknown", "movies", "tvshows", "music", "musicvideos", "trailers", "homevideos", "boxsets", "books", "photos", "livetv", "playlists", "folders" ], "allOf": [ // Output truncated... } Value: -58800 [200] OK: `{"Items":[{"ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"6536cb48d16d2051f4aa4f0f4a2f80da","ChannelId":null,"IsFolder":true,"Type":"CollectionFolder","UserData":{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":false,"Played":false,"Key":"6536cb48-d16d-2051-f4aa-4f0f4a2f80da","ItemId":"6536cb48d16d2051f4aa4f0f4a2f80da"},"CollectionType":"movies","ImageTags":{},"BackdropImageTags":[],"ImageBlurHashes":{},"LocationType":"FileSystem","MediaType":"Unknown"},{"Name":"0","ServerId":"dd5e0484e0f4411590c1 // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items?parentId=f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c' 5. Test Case ID: PoBNPz - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `userId`, `mediaTypes` in query - violates `format` at /properties/userId - violates `type` at /properties/mediaTypes (was array, became boolean) [200] OK: `{"Items":[{"ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"6536cb48d16d2051f4aa4f0f4a2f80da","ChannelId":null,"IsFolder":true,"Type":"CollectionFolder","UserData":{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":false,"Played":false,"Key":"6536cb48-d16d-2051-f4aa-4f0f4a2f80da","ItemId":"6536cb48d16d2051f4aa4f0f4a2f80da"},"CollectionType":"movies","ImageTags":{},"BackdropImageTags":[],"ImageBlurHashes":{},"LocationType":"FileSystem","MediaType":"Unknown"},{"Name":"0","ServerId":"dd5e0484e0f4411590c1 // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items?mediaTypes=true&userId=' ______________________________ GET /Items/Counts _______________________________ 1. Test Case ID: TGY4Qp - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - userId: Value not matching the 'uuid' format [200] OK: `{"MovieCount":1,"SeriesCount":0,"EpisodeCount":0,"ArtistCount":0,"ProgramCount":0,"TrailerCount":0,"SongCount":1,"AlbumCount":0,"MusicVideoCount":0,"BoxSetCount":0,"BookCount":0,"ItemCount":4}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Counts?userId=' 2. Test Case ID: 3RfaOl - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-4aec16addd2035e96e7349a340600371-0304cdae91852138-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Counts?userId=null&userId=null' 3. Test Case ID: KQzKqj - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Counts?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&isFavorite=false' ______________________________ GET /Items/Filters ______________________________ 1. Test Case ID: j4x7C4 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Filters?parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&includeItemTypes=AggregateFolder&mediaTypes=Unknown' 2. Test Case ID: 5V4c9t - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `mediaTypes` in query - violates `enum` at /properties/mediaTypes/items [200] OK: `{"Genres":[],"Tags":[],"OfficialRatings":[],"Years":[]}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Filters?mediaTypes=SZ%F1%93%87%A7%27&mediaTypes=%F3%87%8C%BD%F1%BB%83%93%C3%B67%C2%A9&mediaTypes=%C2%90%F3%A4%AF%83&mediaTypes=%C3%83%F2%A4%BC%88%C3%9C%C2%8E%F1%BA%A6%A1%F0%BE%A5%89%C3%B6F&mediaTypes=%7C%C3%B8&mediaTypes=%C3%B6%C2%85%2F&mediaTypes=v%C2%98%F0%B5%86%97&mediaTypes=&mediaTypes=%22%C3%92x5%C2%94%C3%A7%C2%80%C3%98%C2%AFyNZ%F2%9F%B0%9F%C2%A5%5D%E1%AB%8F%F3%81%AC%93%C2%B8&mediaTypes=%0D%C2%AF%C2%B2%C2%BB%F3%8B%B0%9F&mediaTypes=%16&mediaTypes=C%C2%9302%F1%8A%86%93%09%C2%A0%C2%87%F2%88%A5%81%3D%15%2F%01G%C2%85%C2%A6%C3%96%EB%BD%BD%C2%BD%11%7B%F2%A1%B1%82%F1%BA%BF%8A%C2%BDz%C3%B7%C3%A9%C2%B7%F0%99%BF%A8&mediaTypes=%C2%9CV%C2%BD%F0%B1%80%B9%02&mediaTypes=%F2%BE%B9%AB%C3%8E%C2%82%F3%86%A6%96%C3%82%EA%AB%81%C3%B1%1D%07%07%C3%81%C3%B7&mediaTypes=%3E%C2%A4%C3%AB&mediaTypes=RejectedPositiveData&mediaTypes=8%F3%B9%BA%A7&mediaTypes=%E7%90%82z%C3%B6%F3%8F%A8%A5%F1%BF%80%8C%C2%AA%C3%B4%C2%AD&mediaTypes=%C2%9E%F1%8D%B3%B1%EB%AB%8B%C2%AD%F1%AE%84%8B%5D&mediaTypes=%F3%9A%94%AD%C3%A7%F4%8C%AB%A7&mediaTypes=%C3%AB' _____________________________ GET /Items/Filters2 ______________________________ 1. Test Case ID: SAQpYv - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2643e21a10998e62c4edaa366e0eed0b-6df2d2ab5f23187a-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Filters2?userId=null&userId=null' 2. Test Case ID: qpikWu - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `enum` at /properties/includeItemTypes/items - header: violates `required` (was Authorization) [200] OK: `{"Genres":[],"Tags":[],"AudioLanguages":[],"SubtitleLanguages":[]}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Filters2?includeItemTypes=&isNews=true&isSports=true&recursive=false' ______________________________ GET /Items/Latest _______________________________ 1. Test Case ID: DBWCm4 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-96fbc4bff2b0184c958c98fff128e1d8-5697ae097896b1a7-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Latest?userId=null&userId=null' 2. Test Case ID: ZHP262 - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-029309790ecd03e5d139dc16b9956129-d82eef7de8739d52-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Latest?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 3. Test Case ID: d28Tlz - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `fields`, `includeItemTypes` in query - violates `enum` at /properties/fields/items - violates `enum` at /properties/includeItemTypes/items [200] OK: `[{"Name":"Tone","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"9f0a65a3f0f79088dc28dd8cfda10b42","HasLyrics":false,"Container":"mp3","PremiereDate":"0001-01-01T00:00:00.0000000Z","ChannelId":null,"RunTimeTicks":30000000,"IsFolder":false,"Type":"Audio","UserData":{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":true,"Played":false,"Key":"9f0a65a3-f0f7-9088-dc28-dd8cfda10b42","ItemId":"9f0a65a3f0f79088dc28dd8cfda10b42"},"Artists":["Workbench"],"ArtistItems":[{"Name":"Workbench","Id":"47f22f2b53c683e // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Latest?fields=%F0%BE%A7%9F%C2%A1%C2%AC%F1%9A%86%B9%F0%B5%AD%B4Z%F1%83%BE%B1%F2%B4%96%8D%C2%A6&includeItemTypes=%12%25%F3%A7%A8%A8%C2%BF6&includeItemTypes=%C3%B4&includeItemTypes=' _______________________________ GET /Items/Root ________________________________ 1. Test Case ID: 5likRT - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [200] OK: `{"Name":"Media Folders","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"e9d5075a555c1cbc394eec4cef295274","Etag":"c743b41aae2c7d1cbdec59fbf559ec42","DateCreated":"2026-10-10T07:59:05.2700617Z","CanDelete":false,"CanDownload":false,"SortName":"media folders","ExternalUrls":[],"Path":"/config/root/default","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"PlayAccess":"Full","RemoteTrailers":[],"ProviderIds":{},"IsFolder":true,"ParentId":null,"Type":"UserRootFolder","People":[],"S // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Root?userId=' 2. Test Case ID: lZTvyB - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-da14cace9810c381fd0e019a1ffccab3-a04e868f5b743a53-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Root?userId=null&userId=null' 3. Test Case ID: uO69E8 - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-7ec22f3b105faea831a143db5ad836d6-94b217a57778f249-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Root?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' ____________________________ GET /Items/Suggestions ____________________________ 1. Test Case ID: c7Ngyh - Response violates schema (3 violations) -58800 is not of type "string" Validated against the response schema for status code 200. Schema at /components/schemas/MediaType: { "type": "string", "enum": [ "Unknown", "Video", "Audio", "Photo", "Book" ], "description": "Media types." } Value: -58800 -58800 is not one of "Unknown", "Video" or 3 other candidates Validated against the response schema for status code 200. Schema at /components/schemas/BaseItemDto/properties/MediaType: { "enum": [ "Unknown", "Video", "Audio", "Photo", "Book" ], "allOf": [ { "$ref": "#/components/schemas/MediaType" } ], "description": "Media types.", "default": "Unknown" } Value: -58800 -58800 is not one of "Unknown", "Video" or 3 other candidates Validated against the response schema for status code 200. Schema at /components/schemas/MediaType: { "enum": [ "Unknown", "Video", "Audio", "Photo", "Book" ], "type": "string", "description": "Media types." } Value: -58800 [200] OK: `{"Items":[{"Name":"playlists111111111111111111111111111","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"350b030810e38c4f3622adee16a2ccb4","Etag":"55b6247032cac03b01dd5e8092ada60a","DateCreated":"2026-10-10T08:01:50.0000000Z","CanDelete":true,"CanDownload":false,"SortName":"playlists111111111111111111111111111","ExternalUrls":[],"Path":"/config/data/playlists111111111111111111111111111","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"RunTimeTicks":0,"RemoteTrailers":[],"Provi // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Suggestions?limit=-2147483648&enableTotalRecordCount=true' 2. Test Case ID: 2iRAe5 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-e0dbd4064b652a9546ca3bc1177ac39c-951a87770680a183-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Suggestions?userId=null&userId=null' 3. Test Case ID: kxoOsg - Response violates schema -58800 is not valid under any of the schemas listed in the 'anyOf' keyword Validated against the response schema for status code 200. Schema at /components/schemas/BaseItemDto/properties/CollectionType: { "anyOf": [ { "enum": [ "unknown", "movies", "tvshows", "music", "musicvideos", "trailers", "homevideos", "boxsets", "books", "photos", "livetv", "playlists", "folders" ], "allOf": [ // Output truncated... } Value: -58800 [200] OK: `{"Items":[{"Name":"Refresh Guide","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"3cd5348c3c8b57aa437ac632cb741432","Etag":"da6db640f2b8ea5b78d87b5cdb19e175","DateCreated":"2026-10-10T08:09:18.0000000Z","CanDelete":true,"CanDownload":false,"SortName":"refresh guide","ExternalUrls":[],"Path":"/config/data/playlists/Refresh Guide","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"RunTimeTicks":0,"RemoteTrailers":[],"ProviderIds":{},"IsFolder":true,"ParentId":"1071671e7bffa0532e93 // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Suggestions?enableTotalRecordCount=true&userId=f7557cab-d3a1-2e60-a1ea-f07b1ac26a65&limit=-4194304' 4. Test Case ID: eKZHMt - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `type`, `startIndex` in query - violates `type` at /properties/type (was array, became boolean) - violates `type` at /properties/startIndex (was integer, became object) [200] OK: `{"Items":[{"Name":"Latest","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"30a2220528d2e6ccad5149a3205a2da5","Etag":"bbbf6a60bf6e0446e6a43701f62adc82","DateCreated":"2026-10-10T08:12:27.5817163Z","CanDelete":false,"CanDownload":false,"SortName":"0000000001","ForcedSortName":"1","ExternalUrls":[],"Path":"/config/metadata/views/30a2220528d2e6ccad5149a3205a2da5","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"RemoteTrailers":[],"ProviderIds":{},"IsFolder":true,"ParentId":null,"T // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Suggestions?startIndex=&type=false' _____________________________ GET /Items/{itemId} ______________________________ 1. Test Case ID: NxzPEt - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-3e5979f426fae56eeff1e89ccda93663-5f1100e4bcb1ef94-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=' 2. Test Case ID: RqOSuK - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2ef1bdbe0e70f0185c79d9c86ef5a52c-c8a8333decf723c0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=null&userId=null' ________________________ GET /Items/{itemId}/Ancestors _________________________ 1. Test Case ID: aymwRH - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-76ec740021e740f9829145af01f9f633-7e8cc3ec88820bbc-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Ancestors?userId=null&userId=null' 2. Test Case ID: 2HUeVR - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `format` at /properties/userId - header: violates `required` (was Authorization) [200] OK: `[{"Name":"Movies","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"f137a2dd21bbc1b99aa5c0f6bf02a805","Etag":"878b74a7503e546494448ab98d485c3e","DateCreated":"2026-10-10T08:07:08.9370699Z","DateLastMediaAdded":"0001-01-01T00:00:00.0000000Z","CanDelete":false,"CanDownload":false,"SortName":"movies","ExternalUrls":[],"Path":"/config/root/default/Movies","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"PlayAccess":"Full","RemoteTrailers":[],"ProviderIds":{},"IsFolder":true,"ParentI // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/Ancestors?userId=' _______________________ GET /Items/{itemId}/Collections ________________________ 1. Test Case ID: DhCaT4 - Undocumented HTTP status code Received: 400 Documented: 200, 404, 401, 503, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-d338cbf28f8cf9759fa0a34a764b07e7-7a2e95980c19ade0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Collections?userId=null&userId=null' 2. Test Case ID: PItXX3 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `enum` at /properties/fields/items - query: violates `type` at /properties/limit (was integer, became string) - header: violates `required` (was Authorization) [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":2924}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805/Collections?startIndex=2924&limit=&fields=Y%1E%F1%B8%80%8C%C3%9C%C3%A0%C3%95%F1%9A%A7%B8%28%C3%83%7D%C2%AD%F2%B3%8B%BD&fields=%23%F3%AD%92%A3%C3%83b%F3%BA%83%A4%F3%90%86%A3I&fields=%24%F2%BC%A9%B5%3D%C2%A6%14%C3%A2%C3%AA%C3%BE&fields=%C3%A2%F0%B4%89%8C%09v&fields=AllowHeaderMismatch&fields=%F4%8F%B5%A0iu%23&fields=WP&fields=%05&fields=%C2%80&fields=%C3%8B%C2%AA%09u%C3%8E%C2%A3%1F%C2%AF%13&fields=%F1%8E%96%A5%F1%A3%82%A7%1D%C2%B4&fields=%C2%AA%C2%BE%06%22I%C2%A0e%1Fsc%C2%BF%C3%84%60&fields=%F1%93%AB%A6%F0%A4%B6%8A%C3%95%F0%B1%B3%8A%C2%B5%F1%A9%93%9D&fields=%C3%9A%16%C3%BDE%C3%B8%C2%94%F0%9D%89%A7%C3%8E' _________________________ GET /Items/{itemId}/Download _________________________ 1. Test Case ID: BUHX4V - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-149f1f61ad036d8d2ebb2a0d4799eb65-cec402b0ee570918-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/null%2Cnull/Download 2. Test Case ID: GhMB2D - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/7c245c43084be8050458cc7df09b79da/Download _____________________ GET /Items/{itemId}/ExternalIdInfos ______________________ 1. Test Case ID: jjx4nk - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2009d6bbc21da1f2b19e4af3644cce8b-7e2e67039c1ee55a-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/null%2Cnull/ExternalIdInfos ___________________________ GET /Items/{itemId}/File ___________________________ 1. Test Case ID: Bc2nZL - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-15fdd195039d56ad7fd84e13102d3246-f6122c291817dea5-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/null%2Cnull/File 2. Test Case ID: M1R89J - Undocumented Content-Type Received: text/plain Documented: application/json, application/json; profile="CamelCase", application/json; profile="PascalCase" [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/193cbf57f62b949fb1258d0c8d5e4700/File __________________________ GET /Items/{itemId}/Images __________________________ 1. Test Case ID: CK4ZpN - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-5c7bbafd63b16288aa889f9c5e0b868c-5a978d575e422232-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/null%2Cnull/Images ____________________ GET /Items/{itemId}/Images/{imageType} ____________________ 1. Test Case ID: ndvrhI - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-a8259eb61f1a580ca66685cae7e4089f-258ee5d2cb6dc111-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary?width=2147483648' 2. Test Case ID: O1yL4s - Response violates schema "Test Pattern (2026) does not have an image of type Art" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Test Pattern (2026) does not have an image of type Art" [404] Not Found: `"Test Pattern (2026) does not have an image of type Art"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/Images/Art _____________ GET /Items/{itemId}/Images/{imageType}/{imageIndex} ______________ 1. Test Case ID: mQkJeU - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-7ac16c92829a24021b6c5b1dacab913f-00ee74bcdf2581d9-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary/-2147483648?width=2147483648' 2. Test Case ID: Muk1Ic - Response violates schema "Test Pattern (2026) does not have an image of type Art" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Test Pattern (2026) does not have an image of type Art" [404] Not Found: `"Test Pattern (2026) does not have an image of type Art"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/Images/Art/1 GET /Items/{itemId}/Images/{imageType}/{imageIndex}/{tag}/{format}/{maxWidth}/{maxHeight}/{percentPlayed}/{unplayedCount} 1. Test Case ID: VaOIJH - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-55148c7af5495afc1ebee8c1e8da4d24-36f32be830f1cc08-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary/-2147483648/0/Bmp/-2147483648/-2147483648/0/-2147483648?width=2147483648' 2. Test Case ID: QA2C9e - Response violates schema "Test Pattern (2026) does not have an image of type Art" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Test Pattern (2026) does not have an image of type Art" [404] Not Found: `"Test Pattern (2026) does not have an image of type Art"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/Images/Art/1/0/Bmp/1/1/0.0/1 ________________________ GET /Items/{itemId}/InstantMix ________________________ 1. Test Case ID: KS7EGM - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-b49e5fc3293ca647f706aa1a7ce09072-74970635dd62d691-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/InstantMix?userId=null&userId=null' 2. Test Case ID: FNleLL - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/cc7e13db-3fa0-bede-b991-44e11664c3a4/InstantMix?userId=96dde2f4-2d00-1871-8286-5bec07275624&imageTypeLimit=-2655097&enableImageTypes=Primary&enableUserData=true&limit=-262&fields=ChildCount&enableImages=false' __________________________ GET /Items/{itemId}/Intros __________________________ 1. Test Case ID: Soa9zz - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-793b513be4833a3bf6e7a2edad1a8d90-472824cc2e22dc99-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Intros?userId=' 2. Test Case ID: zg97mU - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-9ed6cd95f8a4b04a16b382b7c71094f7-6fe29adde7a7eba7-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Intros?userId=null&userId=null' 3. Test Case ID: T40FWI - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - violates `format` at /properties/userId [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/Intros?userId=' ______________________ GET /Items/{itemId}/LocalTrailers _______________________ 1. Test Case ID: RIhGd4 - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-c20f99d9d5b3db40882bc6617721985c-b91c77c3487a3fc0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/LocalTrailers?userId=' 2. Test Case ID: FJjGT3 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-0cbf1015ba477601e3e18735d3b018d0-11018fc15db4f8c0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/LocalTrailers?userId=null&userId=null' 3. Test Case ID: Bj5GZe - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - violates `format` at /properties/userId [200] OK: `[]` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805/LocalTrailers?userId=' ______________________ GET /Items/{itemId}/MetadataEditor ______________________ 1. Test Case ID: sUb5Cr - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-d9184d58051b40ad574092323cf9e252-2cf96ec474e43f3c-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/null%2Cnull/MetadataEditor _______________________ GET /Items/{itemId}/PlaybackInfo _______________________ 1. Test Case ID: N93JDr - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-f071bc256795c28dae12bcad1cc66f26-ba9b4bf52db144da-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/PlaybackInfo?userId=null&userId=null' 2. Test Case ID: 6ffO57 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/f137a2dd21bbc1b99aa5c0f6bf02a805/PlaybackInfo?userId=ff53c59634c440fc88ea6fcb6bedc289' _______________________ GET /Items/{itemId}/RemoteImages _______________________ 1. Test Case ID: VAmggo - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"startIndex":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-2ed30a5f15837bcd5825a9e36c3ba4c0-7b98b431b22db234-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/RemoteImages?startIndex=2147483648' 2. Test Case ID: w5hnlA - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `enum`, `allOf` at /properties/type - header: violates `required` (was Authorization) [200] OK: `{"Images":[],"TotalRecordCount":0,"Providers":[]}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/9f0a65a3-f0f7-9088-dc28-dd8cfda10b42/RemoteImages?providerName=%C2%A0%F1%A0%B1%BE%C3%98&type=' __________________ GET /Items/{itemId}/RemoteImages/Providers __________________ 1. Test Case ID: yedkMQ - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-6d303c308b67dfbc6528f09016134f09-2bf1d091bd012bd0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/null%2Cnull/RemoteImages/Providers ____________ GET /Items/{itemId}/RemoteSearch/Subtitles/{language} _____________ 1. Test Case ID: Jt4BlD - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"isPerfectMatch":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-3f69706a9829abce5abad587d12cbf9d-dbb9519085ab260e-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/RemoteSearch/Subtitles/0?isPerfectMatch=null&isPerfectMatch=null' _________________________ GET /Items/{itemId}/Similar __________________________ 1. Test Case ID: sX8Lp1 - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-cfcaf463808c5a04820fabe1615e6f3b-b29fb9dacb3cabf3-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?excludeArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&limit=-2147483648&fields=AirTime' 2. Test Case ID: lPhXjX - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-db51cda3d14e87a4b32f47584f30974b-8ea602515db65bca-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?userId=null&userId=null' 3. Test Case ID: dNMRRp - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `fields`, `userId`, `excludeArtistIds` in query - violates `type` at /properties/fields (was array, became number) - violates `format` at /properties/userId - violates `format` at /properties/excludeArtistIds/items [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/cf0cee7f2cdee52f9c6475af80f12cec/Similar?fields=1.7976931348623157e%2B308&userId=&limit=-16714306&excludeArtistIds=%C3%B7&excludeArtistIds=%C3%BF%5D%C2%BB%14F8%05%5D%C2%86%E3%AF%BC&excludeArtistIds=po0%C3%A5%F1%AA%97%95%05v%05' _____________________ GET /Items/{itemId}/SpecialFeatures ______________________ 1. Test Case ID: fqVg3A - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-ea20ecca215dcd499d349484b642ed02-2e87703e4aaa44c5-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/SpecialFeatures?userId=' 2. Test Case ID: gmCSmw - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-ba7ea5085aac10091e68068b79d6dd60-3f4a23c386ef7610-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/SpecialFeatures?userId=null&userId=null' 3. Test Case ID: iueEsG - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `format` at /properties/userId - header: violates `required` (was Authorization) [200] OK: `[]` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/SpecialFeatures?userId=' ________________________ GET /Items/{itemId}/ThemeMedia ________________________ 1. Test Case ID: ZjEfee - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-f1fcbf544ca4541fd1a885897f9f5302-6ad3d1480690bfb6-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/ThemeMedia?userId=null&userId=null' 2. Test Case ID: XrjLBU - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/ba9c5cad-4ccd-8753-66bf-54fd50e04928/ThemeMedia?sortBy=Studio&sortBy=Artist&sortBy=Name&sortBy=IsFavoriteOrLiked&sortBy=CommunityRating&inheritFromParent=true&userId=93253a336cf144238ef0d4f1e57ced5d&sortOrder=Ascending&sortOrder=Descending&sortOrder=Descending&sortOrder=Descending&sortOrder=Descending&sortOrder=Descending' 3. Test Case ID: KZSdhN - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `sortBy`, `sortOrder` in query - violates `enum` at /properties/sortBy/items - violates `type` at /properties/sortOrder (was array, became string) [200] OK: `{"ThemeVideosResult":{"OwnerId":"e9d5075a555c1cbc394eec4cef295274","Items":[],"TotalRecordCount":0,"StartIndex":0},"ThemeSongsResult":{"OwnerId":"e9d5075a555c1cbc394eec4cef295274","Items":[],"TotalRecordCount":0,"StartIndex":0},"SoundtrackSongsResult":{"OwnerId":"00000000000000000000000000000000","Items":[],"TotalRecordCount":0,"StartIndex":0}}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/7e64e319-657a-9516-ec78-490da03edccb/ThemeMedia?sortOrder=&sortBy=Y%04%C3%9C&sortBy=&sortBy=%F0%97%81%AE.&sortBy=%F0%A2%B0%8E%04%F4%80%98%A8%C2%A2L&inheritFromParent=true' ________________________ GET /Items/{itemId}/ThemeSongs ________________________ 1. Test Case ID: 0fupJS - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-afcbb209c07f0012acc186f2e348764f-5a02756561c06e83-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/ThemeSongs?userId=null&userId=null' 2. Test Case ID: GsBV3B - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/ThemeSongs?userId=062129be8fad452299995bfabea196ce&sortBy=Name&sortBy=Artist&sortBy=DatePlayed&sortBy=AlbumArtist&sortOrder=Descending&sortOrder=Ascending&sortOrder=Ascending&sortOrder=Ascending&sortOrder=Ascending&inheritFromParent=false' 3. Test Case ID: c6FVOl - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `format` at /properties/userId - header: violates `required` (was Authorization) [200] OK: `{"OwnerId":"9f0a65a3f0f79088dc28dd8cfda10b42","Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/9f0a65a3-f0f7-9088-dc28-dd8cfda10b42/ThemeSongs?userId=' _______________________ GET /Items/{itemId}/ThemeVideos ________________________ 1. Test Case ID: XeLnhS - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-634888ce1a56483035b00193903126cf-b31888b12db3d719-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/ThemeVideos?userId=null&userId=null' 2. Test Case ID: 95k1sO - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/cc7e13db-3fa0-bede-b991-44e11664c3a4/ThemeVideos?sortOrder=Ascending&sortOrder=Descending&sortOrder=Descending&sortOrder=Ascending&sortOrder=Ascending&sortOrder=Ascending&sortOrder=Ascending&sortOrder=Descending&sortOrder=Descending&sortOrder=Descending&sortOrder=Ascending&sortOrder=Ascending&sortOrder=Descending&userId=20b99d4a1e96434688703d116acb7c6c&sortBy=StartDate&sortBy=AiredEpisodeOrder' _______________________ GET /Libraries/AvailableOptions ________________________ 1. Test Case ID: 57iV90 - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Libraries/AvailableOptions` [200] OK: `{"MetadataSavers":[{"Name":"Nfo","DefaultEnabled":true}],"MetadataReaders":[{"Name":"Nfo","DefaultEnabled":true}],"SubtitleFetchers":[],"LyricFetchers":[],"MediaSegmentProviders":[],"TypeOptions":[{"Type":"Series","MetadataFetchers":[{"Name":"TheMovieDb","DefaultEnabled":true},{"Name":"The Open Movie Database","DefaultEnabled":true}],"ImageFetchers":[{"Name":"TheMovieDb","DefaultEnabled":true}],"SimilarItemProviders":[{"Name":"TheMovieDb","DefaultEnabled":false},{"Name":"Local Genre/Tag","DefaultEnabled":tr // Output truncated...` Reproduce with: curl -X GET 'http://0.0.0.0:35675/Libraries/AvailableOptions?libraryContentType=-58800' 2. Test Case ID: ldaF88 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `libraryContentType` in query - libraryContentType: Incorrect type [200] OK: `{"MetadataSavers":[{"Name":"Nfo","DefaultEnabled":true}],"MetadataReaders":[{"Name":"Nfo","DefaultEnabled":true}],"SubtitleFetchers":[],"LyricFetchers":[],"MediaSegmentProviders":[],"TypeOptions":[{"Type":"Series","MetadataFetchers":[{"Name":"TheMovieDb","DefaultEnabled":true},{"Name":"The Open Movie Database","DefaultEnabled":true}],"ImageFetchers":[{"Name":"TheMovieDb","DefaultEnabled":true}],"SimilarItemProviders":[{"Name":"TheMovieDb","DefaultEnabled":false},{"Name":"Local Genre/Tag","DefaultEnabled":tr // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Libraries/AvailableOptions?libraryContentType=null&libraryContentType=null' 3. Test Case ID: 6XSoI6 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"isNewLibrary":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-c33e826930eee52951ea6601fdfd968d-7755e557098d2f24-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Libraries/AvailableOptions?isNewLibrary=null&isNewLibrary=null' 4. Test Case ID: 0x8zVh - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `{"MetadataSavers":[{"Name":"Nfo","DefaultEnabled":false}],"MetadataReaders":[{"Name":"Nfo","DefaultEnabled":true}],"SubtitleFetchers":[],"LyricFetchers":[],"MediaSegmentProviders":[],"TypeOptions":[{"Type":"Series","MetadataFetchers":[{"Name":"TheMovieDb","DefaultEnabled":true},{"Name":"The Open Movie Database","DefaultEnabled":false}],"ImageFetchers":[{"Name":"TheMovieDb","DefaultEnabled":false}],"SimilarItemProviders":[{"Name":"TheMovieDb","DefaultEnabled":false},{"Name":"Local Genre/Tag","DefaultEnabled" // Output truncated...` Reproduce with: curl -X GET 'http://0.0.0.0:35675/Libraries/AvailableOptions?libraryContentType=unknown&isNewLibrary=true' __________________________ GET /Library/MediaFolders ___________________________ 1. Test Case ID: fLhDSb - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"isHidden":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-e51d9b54e52dbe293937e3d497a13c8a-4383076dd71f8da7-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/MediaFolders?isHidden=null&isHidden=null' 2. Test Case ID: XeNlM2 - Response violates schema -58800 is not valid under any of the schemas listed in the 'anyOf' keyword Validated against the response schema for status code 200. Schema at /components/schemas/BaseItemDto/properties/CollectionType: { "anyOf": [ { "enum": [ "unknown", "movies", "tvshows", "music", "musicvideos", "trailers", "homevideos", "boxsets", "books", "photos", "livetv", "playlists", "folders" ], "allOf": [ // Output truncated... } Value: -58800 [200] OK: `{"Items":[{"Name":"0","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"1300b601aa71fce3ab7be0f09c67d615","Etag":"fd7f03ca0c4d77d7771cbfff56a9c927","DateCreated":"2026-10-10T07:59:49.8441011Z","CanDelete":false,"CanDownload":false,"SortName":"0000000000","ExternalUrls":[],"Path":"/config/root/default/0","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"RemoteTrailers":[],"ProviderIds":{},"IsFolder":true,"ParentId":"e9d5075a555c1cbc394eec4cef295274","Type":"CollectionFolder","Peop // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/MediaFolders?isHidden=false' 3. Test Case ID: 8wdAUu - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `type` at /properties/isHidden (was boolean, became string) - header: violates `required` (was Authorization) [200] OK: `{"Items":[{"Name":"0","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"1300b601aa71fce3ab7be0f09c67d615","Etag":"fd7f03ca0c4d77d7771cbfff56a9c927","DateCreated":"2026-10-10T07:59:49.8441011Z","CanDelete":false,"CanDownload":false,"SortName":"0000000000","ExternalUrls":[],"Path":"/config/root/default/0","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"RemoteTrailers":[],"ProviderIds":{},"IsFolder":true,"ParentId":"e9d5075a555c1cbc394eec4cef295274","Type":"CollectionFolder","Peop // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/MediaFolders?isHidden=' _________________________ GET /Library/VirtualFolders __________________________ 1. Test Case ID: Uh32nz - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Library/VirtualFolders` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `[{"Name":"03","Locations":[],"LibraryOptions":{"Enabled":true,"EnablePhotos":true,"EnableRealtimeMonitor":false,"EnableLUFSScan":false,"EnableChapterImageExtraction":false,"ExtractChapterImagesDuringLibraryScan":false,"EnableTrickplayImageExtraction":false,"ExtractTrickplayImagesDuringLibraryScan":false,"PathInfos":[],"SaveLocalMetadata":false,"EnableInternetProviders":false,"EnableAutomaticSeriesGrouping":true,"EnableEmbeddedTitles":false,"EnableEmbeddedExtrasTitles":false,"EnableEmbeddedEpisodeInfos":fals // Output truncated...` Reproduce with: curl -X GET http://0.0.0.0:35675/Library/VirtualFolders 2. Test Case ID: r9aFq6 - Response violates schema (2 violations) -58800 is not valid under any of the schemas listed in the 'anyOf' keyword Validated against the response schema for status code 200. Schema at /components/schemas/VirtualFolderInfo/properties/CollectionType: { "anyOf": [ { "enum": [ "movies", "tvshows", "music", "musicvideos", "homevideos", "boxsets", "books", "mixed" ], "allOf": [ { "$ref": "#/components/schemas/CollectionTypeOptions" } ], "description": "Gets or sets the type of the collection." // Output truncated... } Value: -58800 {"AllowEmbeddedSubtitles":"AllowAll","AutomaticRefreshIntervalDays":0,"AutomaticallyAddToCollection":false,"CustomTagDelimiters":[],"DelimiterWhitelist":[],"DisabledLocalMetadataReaders":[],"DisabledLyricFetchers":[],"DisabledMediaSegmentProviders":[],"DisabledSubtitleFetchers":[],"EnableAutomaticSeriesGrouping":false,"EnableChapterImageExtraction":false,"EnableEmbeddedEpisodeInfos":false,"EnableEmbeddedExtrasTitles":false,"EnableEmbeddedTitles":false,"EnableInternetProviders":false,"EnableLUFSScan":false,"EnablePhotos":false,"EnableRealtimeMonitor":false,"EnableTrickplayImageExtraction":false,"Enabled":false,"ExtractChapterImagesDuringLibraryScan":false,"ExtractTrickplayImagesDuringLibraryScan":false,"LocalMetadataReaderOrder":[],"LyricFetcherOrder":[],"MediaSegmentProviderOrder":[],"MetadataSavers":[],"PathInfos":[],"PreferNonstandardArtistsTag":false,"RequirePerfectSubtitleMatch":false,"SaveLocalMetadata":false,"SaveLyricsWithMedia":false,"SaveSubtitlesWithMedia":false,"SaveTrickplayWithMedia":false,"SeasonZeroDisplayName":"","SkipSubtitlesIfAudioTrackMatches":false,"SkipSubtitlesIfEmbeddedSubtitlesPresent":false,"SubtitleDownloadLanguages":[],"SubtitleFetcherOrder":[],"TypeOptions":[{"ImageFetcherOrder":[],"ImageFetchers":[],"ImageOptions":[],"MetadataFetcherOrder":[],"MetadataFetchers":[null],"SimilarItemProviderOrder":[],"SimilarItemProviders":[]}],"UseCustomTagDelimiters":false} is not valid under any of the schemas listed in the 'anyOf' keyword Validated against the response schema for status code 200. Schema at /components/schemas/VirtualFolderInfo/properties/LibraryOptions: { "anyOf": [ { "allOf": [ { "$ref": "#/components/schemas/LibraryOptions" } ] }, { "type": "null" } ] } Value: { "AllowEmbeddedSubtitles": "AllowAll", "AutomaticRefreshIntervalDays": 0, "AutomaticallyAddToCollection": false, "CustomTagDelimiters": [], "DelimiterWhitelist": [], "DisabledLocalMetadataReaders": [], "DisabledLyricFetchers": [], "DisabledMediaSegmentProviders": [], "DisabledSubtitleFetchers": [], "EnableAutomaticSeriesGrouping": false, "EnableChapterImageExtraction": false, "EnableEmbeddedEpisodeInfos": false, "EnableEmbeddedExtrasTitles": false, "EnableEmbeddedTitles": false, "EnableInternetProviders": false, "EnableLUFSScan": false, "EnablePhotos": false, "EnableRealtimeMonitor": false, // Output truncated... } [200] OK: `[{"Name":"0101","Locations":[],"CollectionType":"movies","LibraryOptions":{"Enabled":false,"EnablePhotos":false,"EnableRealtimeMonitor":false,"EnableLUFSScan":false,"EnableChapterImageExtraction":false,"ExtractChapterImagesDuringLibraryScan":false,"EnableTrickplayImageExtraction":false,"ExtractTrickplayImagesDuringLibraryScan":false,"PathInfos":[],"SaveLocalMetadata":false,"EnableInternetProviders":false,"EnableAutomaticSeriesGrouping":false,"EnableEmbeddedTitles":false,"EnableEmbeddedExtrasTitles":false,"E // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Library/VirtualFolders ______________________ GET /LiveTv/ChannelMappingOptions _______________________ 1. Test Case ID: XKB6hI - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/ChannelMappingOptions?providerId=' _____________________________ GET /LiveTv/Channels _____________________________ 1. Test Case ID: 3bng8V - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-8e2426867b4d3f82e40ca55021750936-52d4e81cd984014d-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Channels?userId=null&userId=null' 2. Test Case ID: AfcuIV - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Channels?type=TV&userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&startIndex=-2147483648&isMovie=true&isSeries=true&isNews=true&isKids=true&isSports=true&limit=-2147483648&isFavorite=true&isLiked=true&isDisliked=true&enableImages=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&fields=AirTime&enableUserData=true&sortBy=Default&sortOrder=Ascending&enableFavoriteSorting=true&addCurrentProgram=false' 3. Test Case ID: jJhvgO - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `fields`, `enableImageTypes`, `type` in query - violates `type` at /properties/fields (was array, became boolean) - violates `type` at /properties/enableImageTypes (was array, became boolean) - violates `enum`, `allOf` at /properties/type [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Channels?enableImageTypes=false&fields=false&type=null' _______________________ GET /LiveTv/Channels/{channelId} _______________________ 1. Test Case ID: p10A8T - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2e99dc9809e672dcdd5d8befb0081949-8bb27edfa7b36317-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Channels/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=null&userId=null' _____________________ GET /LiveTv/ListingProviders/Lineups _____________________ 1. Test Case ID: 51zoRD - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/ListingProviders/Lineups?id=&location=&country=' ____________ GET /LiveTv/ListingProviders/SchedulesDirect/Countries ____________ 1. Test Case ID: qnWLc8 - Response violates schema {"Caribbean":[{"fullName":"Anguila","onePostalCode":true,"postalCode":"/AI-2640/","postalCodeExample":"AI-2640","shortName":"AIA"},{"fullName":"Antigua/Barbuda","onePostalCode":true,"postalCode":"/AG/","postalCodeExample":"AG","shortName":"ATG"},{"fullName":"Aruba","onePostalCode":true,"postalCode":"/AW/","postalCodeExample":"AW","shortName":"ABW"},{"fullName":"Bahamas","onePostalCode":true,"postalCode":"/BS/","postalCodeExample":"BS","shortName":"BHS"},{"fullName":"Barbados","postalCode":"/BB\\d{5}/","postalCodeExample":"BB14001","shortName":"BRB"},{"fullName":"Bermuda","postalCode":"/[A-Z]{2}\\d{2}/","postalCodeExample":"CR01","shortName":"BMU"},{"fullName":"Bonaire, Saba, St. Eustatius","onePostalCode":true,"postalCode":"/BQ/","postalCodeExample":"BQ","shortName":"BES"},{"fullName":"British Virgin Islands","postalCode":"/VG\\d{4}/","postalCodeExample":"VG1110","shortName":"VGB"},{"fullName":"Cayman Islands","postalCode":"/KY\\d{1}-\\d{4}/","postalCodeExample":"KY1-0001","shortName":"CYM"},{"fullName":"Curaçao","onePostalCode":true,"postalCode":"/CW/","postalCodeExample":"CW","shortName":"CUW"},{"fullName":"Dominica","onePostalCode":true,"postalCode":"/DM/","postalCodeExample":"DM","shortName":"DMA"},{"fullName":"Dominican Republic","postalCode":"/\\d{5}/","postalCodeExample":"10101","shortName":"DOM"},{"fullName":"Grenada","onePostalCode":true,"postalCode":"/GD/","postalCodeExample":"GW","shortName":"GRD"},{"fullName":"Jamaica","postalCode":"/JM[A-Z]{3}\\d{2}/","postalCodeExample":"JMAAW01","shortName":"JAM"},{"fullName":"Saint Martin","onePostalCode":true,"postalCode":"/97150/","postalCodeExample":"97150","shortName":"MAF"},{"fullName":"Saint Vincent/Grenadines","postalCode":"/VC\\d{4}/","postalCodeExample":"VC0100","shortName":"VCT"},{"fullName":"St. Kitts and Nevis","onePostalCode":true,"postalCode":"/KN/","postalCodeExample":"KN","shortName":"KNA"},{"fullName":"St. Lucia","onePostalCode":true,"postalCode":"/LC/","postalCodeExample":"LC","shortName":"LCA"},{"fullName":"Trinidad and Tobago","onePostalCode":true,"postalCode":"/TT/","postalCodeExample":"TT","shortName":"TTO"},{"fullName":"Turks and Caicos","onePostalCode":true,"postalCode":"/TKCA1ZZ/","postalCodeExample":"TKCA1ZZ","shortName":"TCA"}],"Europe":[{"fullName":"Austria","postalCode":"/\\d{4}/","postalCodeExample":"6886","shortName":"AUT"},{"fullName":"Belgium","postalCode":"/\\d{4}/","postalCodeExample":"2018","shortName":"BEL"},{"fullName":"Switzerland","postalCode":"/\\d{4}/","postalCodeExample":"3303","shortName":"CHE"},{"fullName":"Germany","postalCode":"/\\d{5}/","postalCodeExample":"14050","shortName":"DEU"},{"fullName":"Denmark","postalCode":"/\\d{4}/","postalCodeExample":"9260","shortName":"DNK"},{"fullName":"Spain","postalCode":"/\\d{5}/","postalCodeExample":"28001","shortName":"ESP"},{"fullName":"Finland","postalCode":"/\\d{5}/","postalCodeExample":"91980","shortName":"FIN"},{"fullName":"France","postalCode":"/\\d{5}/","postalCodeExample":"38800","shortName":"FRA"},{"fullName":"Great Britain","postalCode":"/[A-Z]{1,2}\\d{1,2}/","postalCodeExample":"CF31","shortName":"GBR"},{"fullName":"Ireland","postalCode":"/[A-Z]{1}\\d{2}/","postalCodeExample":"D01","shortName":"IRL"},{"fullName":"Italy","postalCode":"/\\d{5}/","postalCodeExample":"00100","shortName":"ITA"},{"fullName":"The Netherlands","postalCode":"/\\d{4}/","postalCodeExample":"1018","shortName":"NLD"},{"fullName":"Luxembourg","onePostalCode":true,"postalCode":"/LU/","postalCodeExample":"LU","shortName":"LUX"},{"fullName":"Norway","postalCode":"/\\d{4}/","postalCodeExample":"0001","shortName":"NOR"},{"fullName":"Poland","postalCode":"/\\d{2}-\\d{3}/","postalCodeExample":"00-008","shortName":"POL"},{"fullName":"Sweden","postalCode":"/\\d{5}/","postalCodeExample":"10005","shortName":"SWE"}],"Latin America":[{"fullName":"Argentina","postalCode":"/[A-Z]\\d{4}/","postalCodeExample":"A4190","shortName":"ARG"},{"fullName":"Belize","onePostalCode":true,"postalCode":"/BZ/","postalCodeExample":"BZ","shortName":"BLZ"},{"fullName":"Brazil","postalCode":"/\\d{5}/","postalCodeExample":"01419","shortName":"BRA"},{"fullName":"Chile","postalCode":"/\\d{7}/","postalCodeExample":"1000000","shortName":"CHL"},{"fullName":"Colombia","postalCode":"/\\d{6}/","postalCodeExample":"684001","shortName":"COL"},{"fullName":"Costa Rica","postalCode":"/\\d{5}/","postalCodeExample":"10101","shortName":"CRI"},{"fullName":"Ecuador","postalCode":"/\\d{6}/","postalCodeExample":"170950","shortName":"ECU"},{"fullName":"Guatemala","postalCode":"/\\d{5}/","postalCodeExample":"01001","shortName":"GTM"},{"fullName":"Guyana","onePostalCode":true,"postalCode":"/GY/","postalCodeExample":"GY","shortName":"GUY"},{"fullName":"Honduras","onePostalCode":true,"postalCode":"/HN/","postalCodeExample":"HN","shortName":"HND"},{"fullName":"Mexico","postalCode":"/\\d{5}/","postalCodeExample":"11500","shortName":"MEX"},{"fullName":"Panama","onePostalCode":true,"postalCode":"/PA/","postalCodeExample":"PA","shortName":"PAN"},{"fullName":"Peru","postalCode":"/\\d{5}/","postalCodeExample":"23006","shortName":"PER"},{"fullName":"Uruguay","postalCode":"/\\d{5}/","postalCodeExample":"11000","shortName":"URY"},{"fullName":"Venezuela","postalCode":"/\\d{4}/","postalCodeExample":"1010","shortName":"VEN"}],"North America":[{"fullName":"United States","postalCode":"/\\d{5}/","postalCodeExample":"12345","shortName":"USA"},{"fullName":"Canada","postalCode":"/[A-Z]{1}[\\d]{1}[A-Z]{1}[\\d]{1}[A-Z]{1}[\\d]{1}/gm","postalCodeExample":"K1A0B1","shortName":"CAN"}],"Oceania":[{"fullName":"Australia","postalCode":"/\\d{4}/","postalCodeExample":"2000","shortName":"AUS"}]} is not of type "string" Validated against the response schema for status code 200. Schema: { "type": "string", "format": "binary" } Value: { "Caribbean": [ { "fullName": "Anguila", "onePostalCode": true, "postalCode": "/AI-2640/", "postalCodeExample": "AI-2640", "shortName": "AIA" }, { "fullName": "Antigua/Barbuda", "onePostalCode": true, "postalCode": "/AG/", "postalCodeExample": "AG", "shortName": "ATG" }, { "fullName": "Aruba", "onePostalCode": true, // Output truncated... } [200] OK: `{"North America":[{"fullName":"United States","shortName":"USA","postalCodeExample":"12345","postalCode":"\/\\d{5}\/"},{"fullName":"Canada","shortName":"CAN","postalCodeExample":"K1A0B1","postalCode":"\/[A-Z]{1}[\\d]{1}[A-Z]{1}[\\d]{1}[A-Z]{1}[\\d]{1}\/gm"}],"Europe":[{"fullName":"Austria","shortName":"AUT","postalCodeExample":"6886","postalCode":"\/\\d{4}\/"},{"fullName":"Belgium","shortName":"BEL","postalCodeExample":"2018","postalCode":"\/\\d{4}\/"},{"fullName":"Switzerland","shortName":"CHE","postalCode // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/ListingProviders/SchedulesDirect/Countries _______________ GET /LiveTv/LiveRecordings/{recordingId}/stream ________________ 1. Test Case ID: 3Qumso - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"recordingId":["The recordingId field is required."]},"traceId":"00-81b4cd8efe36087dbe40af8b16f80dee-57c6e9a9004d3b11-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/LiveRecordings/%0C/stream __________ GET /LiveTv/LiveStreamFiles/{streamId}/stream.{container} ___________ 1. Test Case ID: 9Gg3ws - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"container":["The field container must match the regular expression \u0027^[a-zA-Z0-9\\-\\._,|]{0,40}$\u0027."]},"traceId":"00-8614f20f04a4dfef60e172aeffa90a0f-ba98cdfa52f7143d-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/LiveStreamFiles/0/stream.%C2%84 _____________________________ GET /LiveTv/Programs _____________________________ 1. Test Case ID: Ymzrle - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-75870136e2d6e8600e820eac763f44e6-ee0a7971f46086ca-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Programs?userId=null&userId=null' 2. Test Case ID: vby0do - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Programs?channelIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&minStartDate=2000-01-01T00%3A00%3A00Z&hasAired=true&isAiring=true&maxStartDate=2000-01-01T00%3A00%3A00Z&minEndDate=2000-01-01T00%3A00%3A00Z&maxEndDate=2000-01-01T00%3A00%3A00Z&isMovie=true&isSeries=true&isNews=true&isKids=true&isSports=true&startIndex=-2147483648&limit=-2147483648&sortBy=IsFavoriteOrLiked&sortOrder=Ascending&genres=&genreIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&enableImages=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&enableUserData=true&seriesTimerId=&librarySeriesId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&enableTotalRecordCount=true' 3. Test Case ID: 8Uw9hy - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `sortOrder`, `channelIds`, `minEndDate` in query - violates `type` at /properties/sortOrder (was array, became integer) - violates `format` at /properties/channelIds/items - violates `format` at /properties/minEndDate [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Programs?channelIds=&channelIds=&channelIds=&channelIds=&minEndDate=&sortOrder=12' 4. Test Case ID: vWLNfA - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"maxEndDate":["The value \u00270314-07-18T14:43:57.4582-19:15\u0027 is not valid."]},"traceId":"00-9353e143288070961f0634caa1628e1e-4017a1d5cec65e0c-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Programs?maxEndDate=0314-07-18T14%3A43%3A57.4582-19%3A15&startIndex=-2147483648&librarySeriesId=2b77a777-b2f5-4163-87b2-8c596881431c&minStartDate=2026-10-10T08%3A03%3A46.9748804Z&fields=ParentId&fields=ParentId&fields=MediaStreams&fields=RemoteTrailers&fields=EnableMediaSourceDisplay&fields=ChannelInfo&fields=SortName&genres=workbench_output&genres=%C3%92&genres=%C3%9B%C3%B3N%F0%AD%A9%AA&genres=failures&genres=&genres=%F4%8A%A7%9A%C3%A5&genres=%C2%91&genres=%F1%94%81%AC%C2%B1&genres=total&genres=%C2%91&genres=%16&genres=&genres=%1C%C3%9Bq%7B%C3%9D%C3%83%C2%B6%F1%9B%B7%AA%11%7B%F3%A0%A2%95y%1Ce&genres=%F1%95%BA%83%C3%B5r%F2%99%99%BD&genres=%C3%84&genres=%F2%A8%95%8BQ%C2%B1%C3%B6%11%5C%C3%A8%C2%8F%7F%F2%A8%A6%9F%28&genres=a%0Ab%0Dc%C2%85d%0Be%0Cf%E2%80%A8g%E2%80%A9h%0D%0Ai&genres=&genres=%3B&genres=a%7D&genres=&genres=%F2%A1%A1%A0j&genres=started_at&genres=%C2%BF%F2%A5%95%8D%C2%95&genres=&genres=%C2%84%C3%81%22%01%F3%A4%94%BA%C3%B2W%60%C3%89%C2%95%F2%83%A1%82%F3%8F%A2%93%16%C3%9C%C3%AD%F2%93%97%A6Wq%C3%89%C2%98B%F3%BD%93%A6A%C2%80Z%F3%A8%89%B9%C2%B0%18&genres=&genres=&genres=INF&hasAired=false&isNews=false&userId=ff53c59634c440fc88ea6fcb6bedc289' _______________________ GET /LiveTv/Programs/Recommended _______________________ 1. Test Case ID: BPgPoU - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2f89425e8d9ecb4525ad388adc88e478-b8f19f0b9cb5c9f2-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Programs/Recommended?userId=null&userId=null' 2. Test Case ID: 4VoBcZ - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `enableImageTypes`, `enableUserData` in query - violates `type` at /properties/enableImageTypes (was array, became object) - violates `type` at /properties/enableUserData (was boolean, became string) [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Programs/Recommended?enableImageTypes=%C2%96%16N&enableUserData=&enableTotalRecordCount=false&imageTypeLimit=0&isAiring=true&isKids=false&isNews=true&isSports=false&startIndex=0&userId=b8a1abcd-1a69-16c7-8da4-f9fc3c6da5d7' _______________________ GET /LiveTv/Programs/{programId} _______________________ 1. Test Case ID: 7FfWnG - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Programs/0?userId=' 2. Test Case ID: vr0I87 - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-f1b1fcc59183902cd2789703512783fb-95f7bf67fe2986a2-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Programs/0?userId=null&userId=null' ____________________________ GET /LiveTv/Recordings ____________________________ 1. Test Case ID: mNgpaY - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-e9c87fd487506062a01bcdb9819fcb33-d6cd6d93fa81ed3a-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Recordings?userId=null&userId=null' 2. Test Case ID: hO0Kzy - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `type` at /properties/enableUserData (was boolean, became string) - header: violates `required` (was Authorization) [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Recordings?enableUserData=' ________________________ GET /LiveTv/Recordings/Folders ________________________ 1. Test Case ID: uvMltu - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Recordings/Folders?userId=' 2. Test Case ID: UgtzNZ - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-68584ac5fc836d0eaafe2df161b84c7f-d26597ef19b0f376-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Recordings/Folders?userId=null&userId=null' 3. Test Case ID: Ajyjb2 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Recordings/Folders?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' _____________________ GET /LiveTv/Recordings/{recordingId} _____________________ 1. Test Case ID: 0At71o - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-46fb09f077aeaf5c462dc1fe96ece3f7-c9ba318bd8d28a3e-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Recordings/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=null&userId=null' ___________________________ GET /LiveTv/SeriesTimers ___________________________ 1. Test Case ID: OUIXeC - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `sortOrder` in query - sortOrder: Incorrect type [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/SeriesTimers?sortOrder=null&sortOrder=null' ______________________________ GET /LiveTv/Timers ______________________________ 1. Test Case ID: 9xn553 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"isScheduled":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-8e7d8395d65a3b5adf8c82bdf156ac0c-b8ab62dae1a084dc-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Timers?isScheduled=null&isScheduled=null' 2. Test Case ID: DsszEr - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Timers?seriesTimerId=eb075d6a62e2edc6b764a304633d33c0&isActive=false&isScheduled=false&channelId=~' 3. Test Case ID: krjyvs - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `isActive` in query - violates `type` at /properties/isActive (was boolean, became string) [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Timers?isActive=' _________________________ GET /LiveTv/Timers/Defaults __________________________ 1. Test Case ID: t3YQtI - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Timers/Defaults?programId=%C3%97%C3%B9l%22' _________________________ GET /LiveTv/Timers/{timerId} _________________________ 1. Test Case ID: MfQ9XA - Response violates schema null is not of type "object" Validated against the response schema for status code 200. Schema at /components/schemas/TimerInfoDto: { "type": "object", "properties": { "Id": { "anyOf": [ { "type": "string", "description": "Gets or sets the Id of the recording." }, { "type": "null" } ] }, "Type": { "anyOf": [ { "type": "string" }, // Output truncated... } Value: null [200] OK: `null` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/Timers/0 _________________________ GET /LiveTv/Tuners/Discover __________________________ 1. Test Case ID: EchqJq - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"newDevicesOnly":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-04e0812568856c7a06480b7287146241-01bef6615fcc17ab-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Tuners/Discover?newDevicesOnly=null&newDevicesOnly=null' _________________________ GET /LiveTv/Tuners/Discvover _________________________ 1. Test Case ID: X7ppC6 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"newDevicesOnly":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-84592f9ea619c967d2ddcca434225a96-66e0268017822185-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Tuners/Discvover?newDevicesOnly=null&newDevicesOnly=null' _________________________ GET /Localization/Countries __________________________ 1. Test Case ID: K4GIkp - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Localization/Countries` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `[{"Name":"AF","DisplayName":"Afghanistan","TwoLetterISORegionName":"AF","ThreeLetterISORegionName":"AFG"},{"Name":"AL","DisplayName":"Albania","TwoLetterISORegionName":"AL","ThreeLetterISORegionName":"ALB"},{"Name":"DZ","DisplayName":"Algeria","TwoLetterISORegionName":"DZ","ThreeLetterISORegionName":"DZA"},{"Name":"AR","DisplayName":"Argentina","TwoLetterISORegionName":"AR","ThreeLetterISORegionName":"ARG"},{"Name":"AM","DisplayName":"Armenia","TwoLetterISORegionName":"AM","ThreeLetterISORegionName":"ARM"}, // Output truncated...` Reproduce with: curl -X GET http://0.0.0.0:35675/Localization/Countries __________________________ GET /Localization/Cultures __________________________ 1. Test Case ID: rG608M - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Localization/Cultures` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `[{"Name":"Abkhazian","DisplayName":"Abkhazian","TwoLetterISOLanguageName":"ab","ThreeLetterISOLanguageName":"abk","ThreeLetterISOLanguageNames":["abk"]},{"Name":"Achinese","DisplayName":"Achinese","TwoLetterISOLanguageName":"","ThreeLetterISOLanguageName":"ace","ThreeLetterISOLanguageNames":["ace"]},{"Name":"Acoli","DisplayName":"Acoli","TwoLetterISOLanguageName":"","ThreeLetterISOLanguageName":"ach","ThreeLetterISOLanguageNames":["ach"]},{"Name":"Adangme","DisplayName":"Adangme","TwoLetterISOLanguageName": // Output truncated...` Reproduce with: curl -X GET http://0.0.0.0:35675/Localization/Cultures __________________________ GET /Localization/Options ___________________________ 1. Test Case ID: pX5zJR - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Localization/Options` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `[{"Name":"Abkhazian","Value":"ab"},{"Name":"Afrikaans","Value":"af"},{"Name":"az\u0259rbaycan","Value":"az"},{"Name":"bosanski","Value":"bs"},{"Name":"brezhoneg","Value":"br"},{"Name":"catal\u00E0","Value":"ca"},{"Name":"chiShona","Value":"sn"},{"Name":"cr\u00E9ole ha\u00EFtien","Value":"ht"},{"Name":"Cymraeg","Value":"cy"},{"Name":"dansk","Value":"da"},{"Name":"Deutsch","Value":"de"},{"Name":"eesti","Value":"et"},{"Name":"English","Value":"en-US"},{"Name":"English (United Kingdom)","Value":"en-GB"},{"Name" // Output truncated...` Reproduce with: curl -X GET http://0.0.0.0:35675/Localization/Options ______________________ GET /Localization/ParentalRatings _______________________ 1. Test Case ID: P0nYeH - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Localization/ParentalRatings` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `[{"Name":"Unrated"},{"Name":"Approved","Value":0,"RatingScore":{"score":0}},{"Name":"10","Value":10,"RatingScore":{"score":10}},{"Name":"13","Value":13,"RatingScore":{"score":13}},{"Name":"14","Value":14,"RatingScore":{"score":14}},{"Name":"21","Value":21,"RatingScore":{"score":21}},{"Name":"XXX","Value":1000,"RatingScore":{"score":1000}},{"Name":"Banned","Value":1001,"RatingScore":{"score":1001}}]` Reproduce with: curl -X GET http://0.0.0.0:35675/Localization/ParentalRatings _________________________ GET /MediaSegments/{itemId} __________________________ 1. Test Case ID: ReubrU - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"includeSegmentTypes":["The value \u0027null\u0027 is not valid.","The value \u0027null\u0027 is not valid."]},"traceId":"00-0f3d685f4c769ae869db743ed57e70d2-b0d434a0a5766ff7-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MediaSegments/e3e70682-c209-1cac-a29f-6fbed82c07cd?includeSegmentTypes=null&includeSegmentTypes=null' _________________________ GET /Movies/Recommendations __________________________ 1. Test Case ID: au0sAD - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-688663ef08060e7ea0ee6361a390f1c2-6ef9440ec01f62c4-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Movies/Recommendations?userId=null&userId=null' 2. Test Case ID: PnLalM - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Movies/Recommendations?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 3. Test Case ID: qI629X - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `fields`, `userId` in query - violates `enum` at /properties/fields/items - violates `format` at /properties/userId [200] OK: `[]` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Movies/Recommendations?fields=%ED%80%B9%C2%95%F0%B1%86%B2%C3%B5&fields=%F4%89%85%A6%7Fb3%F4%84%83%94%F4%8E%BB%95%C2%80%C2%8C&fields=%C3%8Ad%01%F3%B0%92%94%C2%96%C2%8D%E6%AD%86%5D%C2%8Bc%27KV%C3%9A%C2%B7%C2%86%C3%80%15&userId=&itemLimit=-82' _________________________ GET /Movies/{itemId}/Similar _________________________ 1. Test Case ID: f4QIBA - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-e45b0158416fcc1a11b07361cdf64f3a-09a75250d734a3d6-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Movies/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?excludeArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&limit=-2147483648&fields=AirTime' 2. Test Case ID: payOxL - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-cce797a22d5d25565e232ef3d727274f-76ccb01ad2d1a9d0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Movies/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?userId=null&userId=null' _________________________ GET /MusicGenres/InstantMix __________________________ 1. Test Case ID: 0ehLTX - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-ccad97426641aad7ec697904472c81ca-bbd6025f3e085a4d-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/InstantMix?id=e3e70682-c209-1cac-a29f-6fbed82c07cd&userId=null&userId=null' _________________________ GET /MusicGenres/{genreName} _________________________ 1. Test Case ID: c4clkQ - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [200] OK: `{"Name":"0","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"ca630e8b9467619fb66d550a0211a9cb","Etag":"543b6ca4c9f21c87d81daf7a932499c0","DateCreated":"2026-10-10T08:01:08.3312997Z","CanDelete":false,"CanDownload":false,"SortName":"0000000000","ExternalUrls":[],"Path":"/config/metadata/MusicGenre/0","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"PlayAccess":"Full","RemoteTrailers":[],"ProviderIds":{},"ParentId":null,"Type":"MusicGenre","People":[],"Studios":[],"GenreItems":[] // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0?userId=' 2. Test Case ID: fl5vKW - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-bd0547b9905c95c6ebd0b67994792727-d2ef69e1c75c6e65-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0?userId=null&userId=null' 3. Test Case ID: A30xlF - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"genreName":["The genreName field is required."]},"traceId":"00-e1868bc3e4c55d0814db3db36a18cb34-e40549604cbb4bd0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/MusicGenres/%0C __________________ GET /MusicGenres/{name}/Images/{imageType} __________________ 1. Test Case ID: Q945fy - Response violates schema "0 does not have an image of type Primary" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "0 does not have an image of type Primary" [404] Not Found: `"0 does not have an image of type Primary"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0/Images/Primary?tag=&format=Bmp&maxWidth=-2147483648&maxHeight=-2147483648&percentPlayed=0&unplayedCount=-2147483648&height=-2147483648&quality=-2147483648&fillWidth=-2147483648&fillHeight=-2147483648&blur=-2147483648&backgroundColor=&foregroundLayer=&imageIndex=-2147483648' 2. Test Case ID: Z9qKcN - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-91a38529716b46d4392c21f57e40bce7-809516a07f872417-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0/Images/Primary?width=2147483648' ___________ GET /MusicGenres/{name}/Images/{imageType}/{imageIndex} ____________ 1. Test Case ID: 2TefmR - Response violates schema "0 does not have an image of type Primary" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "0 does not have an image of type Primary" [404] Not Found: `"0 does not have an image of type Primary"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0/Images/Primary/-2147483648?tag=&format=Bmp&maxWidth=-2147483648&maxHeight=-2147483648&percentPlayed=0&unplayedCount=-2147483648&height=-2147483648&quality=-2147483648&fillWidth=-2147483648&fillHeight=-2147483648&blur=-2147483648&backgroundColor=&foregroundLayer=' 2. Test Case ID: XscNDE - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-ee3f87316ff1c70bd2096bb7ca5354b6-bc3965751a466b32-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0/Images/Primary/-2147483648?width=2147483648' 3. Test Case ID: nj22Vz - Undocumented HTTP status code Received: 414 Documented: 200, 404, 503 [414] URI Too Long: Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0201/Images/Screenshot/644?format=%C2%9E%F4%88%B5%8B%250h%15%C2%A41%13%05%0F%C2%9B%23%F3%84%92%90&maxHeight=%5B%27null%27%2C+%5B%5D%5D&maxHeight=%5B%7B%27%C2%B7_%5Cx0f%27%3A+%27%5CU000cb3bb%5Cx82%5CU00065c5b%5Cx8bx%5CU000a4052%7D%27%7D%2C+%27%C3%A9%5Cx8c%5Ct%C2%BC%5Cx99%27%5D&maxHeight=%5B%7B%27%27%3A+%27false%27%2C+%279%5Cx8a%3A%5Cx85%5CU0008ac3e%5CU000cddeb%2A%5Cx99%C2%A4k%C3%A5%5CU000a3dc9%5CU000ff397%C3%97%27%3A+%27null%27%2C+%27D%5Cx00%5CU000486c6%5CU00077615%5Cx12%5CU000d892c%C3%B3%5CU00097f0b%27%3A+%27false%27%7D%2C+%27false%27%2C+%7B%27%5Cx9f%26G%5Cx98%C2%AA%5Cx94%C2%A6%27%3A+%27null%27%7D%5D&maxHeight=%7B%27%2C%5Cx95%25%5CU0008a0b6%27%3A+23467%2C+%27%C2%BB%27%3A+%27false%27%2C+%27%27%3A+7250850453453164.0%7D&maxHeight=%7B%7D&maxHeight=%7B%27a%5CU00095f7f%27%3A+%5B%27pzo%27%2C+%27%F0%AB%A2%B8q%5Cx9e%C3%96%27%5D%2C+%27%C3%9D%27%3A+%5B-1484%5D%7D&maxHeight=%7B%7D&maxHeight=%7B%27%5CU0007dbac%27%3A+6.389238514462096e%2B16%2C+%27-script.pyw%27%3A+%7B%275%5Cx18%C3%A4%3B%27%3A+%27true%27%7D%7D&maxHeight=%7B%7D&maxHeight=%7B%27%C3%91%27%3A+%7B%7D%2C+%27%27%3A+%5B%5B%5D%2C+631%5D%2C+%27%5Cx01%C3%B8%5Cx9eD%5Cx80%5Cx86W%5CU000a8ebe%C2%A3O%C3%9A%C3%BE%27%3A+%7B%27%C3%BF%27%3A+4.928201133159256e%2B69%2C+%27%C3%BF%5CU00064cd4%C2%A9%C3%89%EB%8B%98%5CU0003be66%5Cx14o%5CU00096ecdJQO%2F%2A%EA%9A%9BY%C3%92%27%3A+631%2C+%27%27%3A+%27false%27%7D%7D&maxHeight=%7B%27%C2%A8Nk%27%3A+-301909%7D&maxHeight=%5B%27%C2%B4%C2%AA%5Cx08G%5Cx0c%C3%9B%C2%B9Q%F0%B1%AE%AA%5CU000f527a%5CU000d90c1%C2%B3l%5CU000e8cb4%C3%AD%C2%B7UB%27%2C+%7B%27%27%3A+1747%2C+%27%5Cx13%5Cxad%5Cx87%C3%AAs%3C%C3%B8%5Cx08%5CU0002f38eY%5CU000785b2%5CU0003415f%5De%C3%8A7%5Cx88%5CU00091167%5Cx86-%5Cx97%5CU0003f87b%5D%C2%B6%27%3A+3050%2C+%27%5Cx86%5Cx81%C2%A6%5CU00053731%F0%A7%8E%A8%C2%A5+%C3%A5%C3%81%27%3A+%27%C3%95%3E%5CU0005f940o%5Cx10%27%7D%2C+%27false%27%5D&maxHeight=%5B-127118%5D&maxHeight=%5B%7B%7D%5D&maxHeight=null&maxHeight=%7B%27%5Cx1e%5Cx0f%C3%A2kO%C3%87%5CU000e6569%27%3A+%27false%27%2C+%27%27%3A+-14975832%2C+%27%5Cx08%2AoV%27%3A+%27null%27%7D&maxHeight=%7B%27%C3%BC%C3%A2%27%3A+%27%C3%A0%F0%97%BB%B1%5Cx83%C3%A1%27%7D&maxHeight=%7B%27%5Cx1aU%C2%A8%C3%B3%C2%B1%5CU000fdd16%26%C2%AA%5CU000bbf49%7C%5Cx8e%F0%91%8D%A8Z%5Cx10%C3%91%27%3A+%27%C2%AA%27%2C+%27%5Cx93%5CU00085b4b%5CU00079101%5CU0008e99eT%C3%B3%F0%A2%AB%97%5CU0005ded2%27%3A+%5B-868910507151880.0%2C+%27true%27%2C+3126730%5D%2C+%27%27%3A+%5B%5D%7D&maxHeight=6.071617761711467e%2B16&maxHeight=%5B%27%C2%A7%27%5D&maxHeight=%7B%27999999999999999999999999999999%27%3A+%5B%27%27%2C+%27false%27%2C+4.64234551163476e%2B16%5D%7D&maxHeight=%5B-4.7685362161819336e%2B16%2C+6.962371202645671e-264%5D&maxHeight=1653&maxHeight=-1065580&maxHeight=%5B%5B%27null%27%5D%5D&maxHeight=-1232017525&maxHeight=%5B%7B%7D%5D&maxHeight=2157572198010459.0&maxHeight=%5B%5D&maxHeight=-5.960464477539063e-08&maxHeight=%5B%5D&maxHeight=-32090&maxHeight=%7B%27%27%3A+9007199254740992.0%2C+%27%C3%8C%C3%AF%5Cx87-%5CU0003a175%5C%5C%C2%BF%F0%A5%83%AC%C3%83%27%3A+%27null%27%7D&maxHeight=%7B%27%C3%96%5Ct%5Cx8c%5Cx0fkO%5Cx9bT%C3%96%C3%BC%27%3A+-35148%2C+%27%5CU000aec2a%27%3A+%27null%27%2C+%27%5CU000eb7f3%27%3A+%27null%27%7D&maxHeight=%7B%27%5Cx93u%2B%C3%8E%5Cx92%24%27%3A+%5B-752%5D%7D&maxHeight=%7B%27%27%3A+%7B%27_%C2%A1%C2%A3%C3%80%5CU000d6647%5CU0005e3f5%C3%93%3E%5Cx9a%C3%8C%5CU000f58c6TO%5Cx1d%5CU0007c29c%5Cx82%27%3A+%7B%27%5CU000a6009%27%3A+%273%C3%BF%27%2C+%27%5Cx15%C2%A8x%C3%AD%5Cxad%5CU00063c79%5Cx1c%2F%27%3A+19658474822512762945536%2C+%27%5CU0002f64d%5CU001070e0%C3%AD5%5Cx1b6%C3%8B%5CU000a190dO%3B%5CU00016672P%5CU000b60b7E%5CU000c63f8%5Cx99%C3%B7%C2%AE%27%3A+-3.6981453704102395e%2B274%7D%2C+%27%5Cx01%27%3A+%5B%5D%7D%2C+%27%C2%A1b%C3%8CO%C3%B3%C2%B8%5CU00066d3f%5CU00087e43%27%3A+%5B%27null%27%5D%7D&maxHeight=%7B%27%C3%9C%5Cx83%5Cx1c%C3%B2%5Cxa0%C3%89%60%C3%BC%27%3A+%27%5CU0007619a%5CU0003d5f1%5CU000cd37c%C3%BB%27%2C+%27%27%3A+%27null%27%2C+%27%C3%BD%27%3A+%27null%27%7D&maxHeight=%7B%27%C2%A8Nk%27%3A+%5B%5D%2C+%27%C2%B2%C3%91%C3%BB%C3%AE%27%3A+%5B%5B%5D%2C+3.24055046892166e%2B201%2C+%5B3050%2C+%27%5Cx1e%5CU000a303b%5CU000e02b9%F0%98%9D%A1%7D%C3%92d%27%2C+%27__main__%27%5D%5D%2C+%27%5CU0009b48f%5CnQ%C3%B5N%5Cx8f%27%3A+1.7976931348623155e%2B308%7D&maxHeight=%5B%27null%27%2C+%5B%5D%5D&maxHeight=%5B%7B%27%C2%B7_%5Cx0f%27%3A+%27%5CU000cb3bb%5Cx82%5CU00065c5b%5Cx8bx%5CU000a4052%7D%27%7D%2C+%27%C3%A9%5Cx8c%5Ct%C2%BC%5Cx99%27%5D&maxHeight=%5B%7B%27%27%3A+%27false%27%2C+%279%5Cx8a%3A%5Cx85%5CU0008ac3e%5CU000cddeb%2A%5Cx99%C2%A4k%C3%A5%5CU000a3dc9%5CU000ff397%C3%97%27%3A+%27null%27%2C+%27D%5Cx00%5CU000486c6%5CU00077615%5Cx12%5CU000d892c%C3%B3%5CU00097f0b%27%3A+%27false%27%7D%2C+%27false%27%2C+%7B%27%5Cx9f%26G%5Cx98%C2%AA%5Cx94%C2%A6%27%3A+%27null%27%7D%5D&maxHeight=%7B%27%2C%5Cx95%25%5CU0008a0b6%27%3A+23467%2C+%27%C2%BB%27%3A+%27false%27%2C+%27%27%3A+7250850453453164.0%7D&maxHeight=%7B%7D&maxHeight=%7B%27a%5CU00095f7f%27%3A+%5B%27pzo%27%2C+%27%F0%AB%A2%B8q%5Cx9e%C3%96%27%5D%2C+%27%C3%9D%27%3A+%5B-1484%5D%7D&maxHeight=%7B%7D&maxHeight=%7B%27%5CU0007dbac%27%3A+6.389238514462096e%2B16%2C+%27-script.pyw%27%3A+%7B%275%5Cx18%C3%A4%3B%27%3A+%27true%27%7D%7D&maxHeight=%7B%7D&maxHeight=%7B%27%C3%91%27%3A+%7B%7D%2C+%27%27%3A+%5B%5B%5D%2C+631%5D%2C+%27%5Cx01%C3%B8%5Cx9eD%5Cx80%5Cx86W%5CU000a8ebe%C2%A3O%C3%9A%C3%BE%27%3A+%7B%27%C3%BF%27%3A+4.928201133159256e%2B69%2C+%27%C3%BF%5CU00064cd4%C2%A9%C3%89%EB%8B%98%5CU0003be66%5Cx14o%5CU00096ecdJQO%2F%2A%EA%9A%9BY%C3%92%27%3A+631%2C+%27%27%3A+%27false%27%7D%7D&maxHeight=%7B%27%C2%A8Nk%27%3A+-301909%7D&maxHeight=%5B%27%C2%B4%C2%AA%5Cx08G%5Cx0c%C3%9B%C2%B9Q%F0%B1%AE%AA%5CU000f527a%5CU000d90c1%C2%B3l%5CU000e8cb4%C3%AD%C2%B7UB%27%2C+%7B%27%27%3A+1747%2C+%27%5Cx13%5Cxad%5Cx87%C3%AAs%3C%C3%B8%5Cx08%5CU0002f38eY%5CU000785b2%5CU0003415f%5De%C3%8A7%5Cx88%5CU00091167%5Cx86-%5Cx97%5CU0003f87b%5D%C2%B6%27%3A+3050%2C+%27%5Cx86%5Cx81%C2%A6%5CU00053731%F0%A7%8E%A8%C2%A5+%C3%A5%C3%81%27%3A+%27%C3%95%3E%5CU0005f940o%5Cx10%27%7D%2C+%27false%27%5D&maxHeight=%5B-127118%5D&maxHeight=%5B%7B%7D%5D&maxHeight=null&maxHeight=%7B%27%5Cx1e%5Cx0f%C3%A2kO%C3%87%5CU000e6569%27%3A+%27false%27%2C+%27%27%3A+-14975832%2C+%27%5Cx08%2AoV%27%3A+%27null%27%7D&maxHeight=%7B%27%C3%BC%C3%A2%27%3A+%27%C3%A0%F0%97%BB%B1%5Cx83%C3%A1%27%7D&maxHeight=%7B%27%5Cx1aU%C2%A8%C3%B3%C2%B1%5CU000fdd16%26%C2%AA%5CU000bbf49%7C%5Cx8e%F0%91%8D%A8Z%5Cx10%C3%91%27%3A+%27%C2%AA%27%2C+%27%5Cx93%5CU00085b4b%5CU00079101%5CU0008e99eT%C3%B3%F0%A2%AB%97%5CU0005ded2%27%3A+%5B-868910507151880.0%2C+%27true%27%2C+3126730%5D%2C+%27%27%3A+%5B%5D%7D&maxHeight=6.071617761711467e%2B16&maxHeight=%5B%27%C2%A7%27%5D&maxHeight=%7B%27999999999999999999999999999999%27%3A+%5B%27%27%2C+%27false%27%2C+4.64234551163476e%2B16%5D%7D&maxHeight=%5B-4.7685362161819336e%2B16%2C+6.962371202645671e-264%5D&maxHeight=1653&maxHeight=-1065580&maxHeight=%5B%5B%27null%27%5D%5D&maxHeight=-1232017525&maxHeight=%5B%7B%7D%5D&maxHeight=2157572198010459.0&maxHeight=%5B%5D&maxHeight=-5.960464477539063e-08&maxHeight=%5B%5D&maxHeight=-32090&maxHeight=%7B%27%27%3A+9007199254740992.0%2C+%27%C3%8C%C3%AF%5Cx87-%5CU0003a175%5C%5C%C2%BF%F0%A5%83%AC%C3%83%27%3A+%27null%27%7D&maxHeight=%7B%27%C3%96%5Ct%5Cx8c%5Cx0fkO%5Cx9bT%C3%96%C3%BC%27%3A+-35148%2C+%27%5CU000aec2a%27%3A+%27null%27%2C+%27%5CU000eb7f3%27%3A+%27null%27%7D&maxHeight=%7B%27%5Cx93u%2B%C3%8E%5Cx92%24%27%3A+%5B-752%5D%7D&maxHeight=%7B%27%27%3A+%7B%27_%C2%A1%C2%A3%C3%80%5CU000d6647%5CU0005e3f5%C3%93%3E%5Cx9a%C3%8C%5CU000f58c6TO%5Cx1d%5CU0007c29c%5Cx82%27%3A+%7B%27%5CU000a6009%27%3A+%273%C3%BF%27%2C+%27%5Cx15%C2%A8x%C3%AD%5Cxad%5CU00063c79%5Cx1c%2F%27%3A+19658474822512762945536%2C+%27%5CU0002f64d%5CU001070e0%C3%AD5%5Cx1b6%C3%8B%5CU000a190dO%3B%5CU00016672P%5CU000b60b7E%5CU000c63f8%5Cx99%C3%B7%C2%AE%27%3A+-3.6981453704102395e%2B274%7D%2C+%27%5Cx01%27%3A+%5B%5D%7D%2C+%27%C2%A1b%C3%8CO%C3%B3%C2%B8%5CU00066d3f%5CU00087e43%27%3A+%5B%27null%27%5D%7D&maxHeight=%7B%27%C3%9C%5Cx83%5Cx1c%C3%B2%5Cxa0%C3%89%60%C3%BC%27%3A+%27%5CU0007619a%5CU0003d5f1%5CU000cd37c%C3%BB%27%2C+%27%27%3A+%27null%27%2C+%27%C3%BD%27%3A+%27null%27%7D&maxHeight=%7B%27%C2%A8Nk%27%3A+%5B%5D%2C+%27%C2%B2%C3%91%C3%BB%C3%AE%27%3A+%5B%5B%5D%2C+3.24055046892166e%2B201%2C+%5B3050%2C+%27%5Cx1e%5CU000a303b%5CU000e02b9%F0%98%9D%A1%7D%C3%92d%27%2C+%27__main__%27%5D%5D%2C+%27%5CU0009b48f%5CnQ%C3%B5N%5Cx8f%27%3A+1.7976931348623155e%2B308%7D&maxHeight=&maxHeight=&unplayedCount=4426638157654358' ______________________ GET /MusicGenres/{name}/InstantMix ______________________ 1. Test Case ID: zHqrbn - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-87f4a939c1a24cb08f9d317f7446725d-cbb9b510773fc59d-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0/InstantMix?userId=null&userId=null' 2. Test Case ID: EPaTDB - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `type` at /properties/limit (was integer, became string) - query: violates `type` at /properties/fields (was array, became integer) - query: violates `type` at /properties/enableImageTypes (was array, became boolean) - header: violates `required` (was Authorization) [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0/InstantMix?enableImageTypes=false&fields=0&limit=' _____________________________ GET /Packages/{name} _____________________________ 1. Test Case ID: gP2AHL - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-149b32e5dd379155df25cd72258c6e7e-fd8c082c1b916a83-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Packages/0?assemblyGuid=' 2. Test Case ID: Qd1sPZ - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"assemblyGuid":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-b81f29fd5489fdad19db53dc84ac22ea-cb999e3407a08b62-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Packages/0?assemblyGuid=null&assemblyGuid=null' _________________________________ GET /Persons _________________________________ 1. Test Case ID: bmGuQb - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-c855cddc365422fc2c55fd4f6a384967-39423256fb591795-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons?userId=null&userId=null' 2. Test Case ID: NVp3Ry - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameters `fields`, `excludePersonTypes`, `personTypes` in query - violates `enum` at /properties/fields/items - violates `type` at /properties/excludePersonTypes (was array, became boolean) - violates `type` at /properties/personTypes (was array, became number) [200] OK: `{"Items":[{"Name":"Workbench","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"33c573e36452c04993d2b4ff2854349a","ChannelId":null,"Type":"Person","UserData":{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":false,"Played":false,"Key":"Person-Workbench","ItemId":"33c573e36452c04993d2b4ff2854349a"},"ImageTags":{},"BackdropImageTags":[],"ImageBlurHashes":{},"LocationType":"FileSystem","MediaType":"Unknown"}],"TotalRecordCount":1,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons?excludePersonTypes=false&fields=&personTypes=0.3951475255326536' _____________________________ GET /Persons/{name} ______________________________ 1. Test Case ID: 8WSjOu - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [200] OK: `{"Name":"Workbench","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"33c573e36452c04993d2b4ff2854349a","Etag":"77c0b5f506b035a422621691f5008ee9","DateCreated":"2026-10-10T07:59:11.5290838Z","CanDelete":false,"CanDownload":false,"SortName":"Workbench","ExternalUrls":[],"Path":"/config/metadata/People/W/Workbench","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"PlayAccess":"Full","RemoteTrailers":[],"ProviderIds":{},"ParentId":null,"Type":"Person","People":[],"Studios":[],"Genre // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons/Workbench?userId=' 2. Test Case ID: j5SfDr - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-f54cb621bd68441396b54003f0a0dc7a-e9d38fe11d58b1e5-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons/Workbench?userId=null&userId=null' ____________________ GET /Persons/{name}/Images/{imageType} ____________________ 1. Test Case ID: 0Dqo9o - Response violates schema "Workbench does not have an image of type Primary" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Workbench does not have an image of type Primary" [404] Not Found: `"Workbench does not have an image of type Primary"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons/Workbench/Images/Primary?tag=&format=Bmp&maxWidth=-2147483648&maxHeight=-2147483648&percentPlayed=0&unplayedCount=-2147483648&height=-2147483648&quality=-2147483648&fillWidth=-2147483648&fillHeight=-2147483648&blur=-2147483648&backgroundColor=&foregroundLayer=&imageIndex=-2147483648' 2. Test Case ID: a0TzBy - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-c47260c216d2052cc6e35a1d08418053-2034889986712812-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons/Workbench/Images/Primary?width=2147483648' _____________ GET /Persons/{name}/Images/{imageType}/{imageIndex} ______________ 1. Test Case ID: cJiDE8 - Response violates schema "Workbench does not have an image of type Primary" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Workbench does not have an image of type Primary" [404] Not Found: `"Workbench does not have an image of type Primary"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons/Workbench/Images/Primary/-2147483648?tag=&format=Bmp&maxWidth=-2147483648&maxHeight=-2147483648&percentPlayed=0&unplayedCount=-2147483648&height=-2147483648&quality=-2147483648&fillWidth=-2147483648&fillHeight=-2147483648&blur=-2147483648&backgroundColor=&foregroundLayer=' 2. Test Case ID: wXk88r - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-1169dbe5172c8005837068a03d976717-52b72227d237456b-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons/Workbench/Images/Primary/-2147483648?width=2147483648' __________________________ GET /Playback/BitrateTest ___________________________ 1. Test Case ID: OgWEOz - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"size":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-443e57215ea6fb576620038f84d885cb-c2d99e695b887e8d-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playback/BitrateTest?size=null&size=null' ______________________ GET /Playlists/{itemId}/InstantMix ______________________ 1. Test Case ID: jg1q7K - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-c4c378b350778c65186603ace5084d57-35ca32c33aa45a3d-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/InstantMix?userId=null&userId=null' _________________________ GET /Playlists/{playlistId} __________________________ 1. Test Case ID: H8WJro - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"playlistId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-0a37232a42af034ee47439b8c22b845b-554eacdb77caeffe-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/null%2Cnull 2. Test Case ID: RL55sY - Response violates schema "Playlist not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Playlist not found" [404] Not Found: `"Playlist not found"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd ______________________ GET /Playlists/{playlistId}/Items _______________________ 1. Test Case ID: fKnaDk - Response violates schema "Playlist not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Playlist not found" [404] Not Found: `"Playlist not found"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?startIndex=-2147483648&limit=-2147483648&fields=AirTime&enableImages=true&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary' 2. Test Case ID: 6IpdK6 - Undocumented HTTP status code Received: 400 Documented: 200, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-3fcef23f17ef20cd5aa347ccb761fb0d-95121afcbc637fe8-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?userId=null&userId=null' 3. Test Case ID: Wt8tsw - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 403, 404, 503, 401 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' ______________________ GET /Playlists/{playlistId}/Users _______________________ 1. Test Case ID: QLM6tk - Undocumented HTTP status code Received: 400 Documented: 200, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"playlistId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-582c0e4d53d5134f14acfff5f0822cc0-741ea79cb2c037d0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/null%2Cnull/Users 2. Test Case ID: JMlHnF - Response violates schema "Playlist not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Playlist not found" [404] Not Found: `"Playlist not found"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Users __________________ GET /Playlists/{playlistId}/Users/{userId} __________________ 1. Test Case ID: 4WjAPY - Undocumented HTTP status code Received: 400 Documented: 200, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-53904a4d87634c853b6107f6a07f0242-7d851268c5a82c50-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Users/null%2Cnull 2. Test Case ID: Gfy0Bw - Response violates schema "Playlist not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Playlist not found" [404] Not Found: `"Playlist not found"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd ____________________ GET /Plugins/{pluginId}/Configuration _____________________ 1. Test Case ID: PeSeII - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"pluginId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-c974d805efbbfcc9f4b541a62fc7620b-f8a38a2b2d3c8b6d-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/null%2Cnull/Configuration 2. Test Case ID: p7B3AR - Response violates schema False schema does not allow false Validated against the response schema for status code 200. Schema: { "additionalProperties": false, "type": "object", "description": "Class BasePluginConfiguration." } Value: false [200] OK: `{"ReplaceAlbumName":false}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/a629c0dafac54c7e931a7174223f14c8/Configuration ___________________ GET /Plugins/{pluginId}/{version}/Image ____________________ 1. Test Case ID: Xn1iQt - Missing header not rejected Got 400 when missing required 'Authorization' header, expected 401 - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"version":["The value \u00270\u0027 is not valid."]},"traceId":"00-dc418fec8b403cda0edffd7cf576b450-6f4c0f94b3348875-00"}` Reproduce with: curl -X GET http://0.0.0.0:35675/Plugins/e3e70682-c209-1cac-a29f-6fbed82c07cd/0/Image 2. Test Case ID: Ji79FP - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"version":["The value \u00270\u0027 is not valid."]},"traceId":"00-8d75013f7e34bbab1a3bbeef35eb10e7-307370ef7dcafbf9-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/e3e70682-c209-1cac-a29f-6fbed82c07cd/0/Image 3. Test Case ID: rSUKPb - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /Plugins/{pluginId}/{version}/Image` [200] OK: ` ListenBrainz_logo-svg Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/null%2Cnull _______________________ GET /System/ActivityLog/Entries ________________________ 1. Test Case ID: VrXclS - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"startIndex":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-7bbd9cda9818b8344ee58b38f4081ced-8cd032f804e8e794-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/System/ActivityLog/Entries?startIndex=2147483648' 2. Test Case ID: ka63p1 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `enum`, `allOf` at /properties/severity - query: violates `format` at /properties/itemId - header: violates `required` (was Authorization) [200] OK: `{"Items":[{"Id":66,"Name":"User 273 has been created","Type":"UserCreated","Date":"2026-10-10T08:07:15.8596376Z","UserId":"001b6bc34e194124aed0a0639707b41d","Severity":"Information"},{"Id":65,"Name":"User playlists11111111111111111111111111111111 has been created","Type":"UserCreated","Date":"2026-10-10T08:07:15.7800183Z","UserId":"5db947875af64eedb3b60f731e32c38d","Severity":"Information"},{"Id":64,"Name":"User \u00DBG\u00DCqF6\u00F6\u00C8 has been created","Type":"UserCreated","Date":"2026-10-10T08:07:15. // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/System/ActivityLog/Entries?severity=D%C3%AF%F1%A4%83%B5OoV%0C%F1%BA%BA%97k%C3%B1X%C3%96%C2%9E%3B%F2%8C%A0%93%C2%92%C3%A4&severity=%05&severity=%F1%A9%B2%B9%F4%8F%BC%A0_%F3%98%A3%A9&severity=%C2%85%F0%B7%AE%97&severity=%C2%A2%F1%87%B5%AD%C3%A9&severity=null&severity=%7B%7D&severity=null&severity=%0C%C2%96%C2%BC%F3%93%88%8F%15%C3%94%F4%8D%B9%B5%C2%A0%F3%A8%83%B2%C2%BEm%C2%8B7&severity=%23%C3%BA%C3%BD%C2%BEM%F1%9E%85%9A&severity=h%10%C2%9D&severity=d%C3%AE%0E%1Ef%40n%C3%AE%C3%AF%C2%8B%C3%AB&severity=%C3%B5%C3%9E%C2%A6&itemId=' 3. Test Case ID: B0dvLm - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"maxDate":["The value \u00270280-01-01T09:41:12\u002B16:09\u0027 is not valid."]},"traceId":"00-b731b68ca3b1d7a88a327bf474c92156-15fed85898f9085f-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/System/ActivityLog/Entries?username=admin&maxDate=0280-01-01T09%3A41%3A12%2B16%3A09&shortOverview=IP+address%3A+172.21.0.1&overview=After+months+of+trying+and+failing+to+get+pregnant%2C+Lucy+and+Adrian+finally+find+their+dream+fertility+doctor+in+the+illustrious+Dr.+Hindle.+But+after+becoming+pregnant+with+a+healthy+baby+girl%2C+Lucy+begins+to+notice+something+sinister+through+Hindle%27s+gleaming+charm%2C+and+she+sets+out+to+uncover+the+unsettling+truth+about+him.&type=%C2%8E%C2%96%2C%C3%87%C2%B4%00&itemId=cc7e13db-3fa0-bede-b991-44e11664c3a4' _______________________ GET /System/Configuration/{key} ________________________ 1. Test Case ID: Zu0FCQ - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/System/Configuration/0 _______________________________ GET /System/Info _______________________________ 1. Test Case ID: WosAha - API accepts requests without authentication Expected 401 or 403, got `200 OK` for `GET /System/Info` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 200 when missing required 'Authorization' header, expected 401 [200] OK: `{"OperatingSystemDisplayName":"","HasPendingRestart":false,"IsShuttingDown":false,"SupportsLibraryMonitor":true,"WebSocketPortNumber":8096,"CompletedInstallations":[],"CanSelfRestart":true,"CanLaunchWebBrowser":false,"ProgramDataPath":"/config","WebPath":"/jellyfin/jellyfin-web","ItemsByNamePath":"/config/metadata","CachePath":"/cache","LogPath":"/config/log","InternalMetadataPath":"/config/metadata","TranscodingTempPath":"/cache/transcodes","CastReceiverApplications":[],"HasUpdateAvailable":false,"EncoderL // Output truncated...` Reproduce with: curl -X GET http://0.0.0.0:35675/System/Info _____________________________ GET /System/Logs/Log _____________________________ 1. Test Case ID: lxexTW - Undocumented HTTP status code Received: 400 Documented: 200, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."]},"traceId":"00-856073b2e4acab0b66ef5807c726392f-6d6e6d664d2f30e9-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/System/Logs/Log 2. Test Case ID: loLySc - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."]},"traceId":"00-0bae786014ac80b82674496c0f7afaa3-f4e361d3f376f086-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/System/Logs/Log?name=' 3. Test Case ID: lIcvoe - Response violates schema "Log file not found." is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Log file not found." [404] Not Found: `"Log file not found."` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/System/Logs/Log?name=00' ________________________________ GET /Trailers _________________________________ 1. Test Case ID: GIRBjM - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Trailers?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&maxOfficialRating=&hasThemeSong=true&hasThemeVideo=true&hasSubtitles=true&hasSpecialFeature=true&hasTrailer=true&adjacentTo=e3e70682-c209-1cac-a29f-6fbed82c07cd&parentIndexNumber=-2147483648&hasParentalRating=true&isHd=true&is4K=true&locationTypes=FileSystem&excludeLocationTypes=FileSystem&isMissing=true&isUnaired=true&minCommunityRating=0&minCriticRating=0&minPremiereDate=2000-01-01T00%3A00%3A00Z&minDateLastSaved=2000-01-01T00%3A00%3A00Z&minDateLastSavedForUser=2000-01-01T00%3A00%3A00Z&maxPremiereDate=2000-01-01T00%3A00%3A00Z&hasOverview=true&hasImdbId=true&hasTmdbId=true&hasTvdbId=true&isMovie=true&isSeries=true&isNews=true&isKids=true&isSports=true&excludeItemIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&startIndex=-2147483648&limit=-2147483648&recursive=true&searchTerm=&sortOrder=Ascending&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&excludeItemTypes=AggregateFolder&filters=IsFolder&isFavorite=true&mediaTypes=Unknown&imageTypes=Primary&sortBy=Default&isPlayed=true&genres=&officialRatings=&tags=&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&person=&personIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&personTypes=&studios=&artists=&excludeArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&artistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&albumArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&contributingArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&albums=&albumIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&ids=e3e70682-c209-1cac-a29f-6fbed82c07cd&minOfficialRating=&isLocked=true&isPlaceHolder=true&hasOfficialRating=true&collapseBoxSetItems=true&minWidth=-2147483648&minHeight=-2147483648&maxWidth=-2147483648&maxHeight=-2147483648&is3D=true&seriesStatus=Continuing&nameStartsWithOrGreater=&nameStartsWith=&nameLessThan=&studioIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&genreIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&audioLanguages=&subtitleLanguages=&enableTotalRecordCount=true&enableImages=true' 2. Test Case ID: hwydBD - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Trailers?years=2147483648' 3. Test Case ID: q3wZEC - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"minDateLastSavedForUser":["The value \u00271155-11-04T20:52:25-23:44\u0027 is not valid."]},"traceId":"00-f1e8ab42987c27377402106a3f164db4-4974ddbda97aa8e9-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Trailers?minDateLastSavedForUser=1155-11-04T20%3A52%3A25-23%3A44&hasSpecialFeature=false&isNews=true&isLocked=false&nameStartsWithOrGreater=then&isPlayed=true&minOfficialRating=%C2%BCj&subtitleLanguages=%C2%A1%C2%BB%C2%99%C3%A1R%14%18&subtitleLanguages=%F4%8B%A8%9D%F3%B5%8D%BC&subtitleLanguages=&subtitleLanguages=%24%C3%85%15&subtitleLanguages=q%F0%B3%97%A9%7F&subtitleLanguages=%C3%90&subtitleLanguages=&isFavorite=true&ids=099ffca9-ad04-5ae9-aeef-37406f5ca196&parentId=ba9c5cad-4ccd-8753-66bf-54fd50e04928&userId=ff53c59634c440fc88ea6fcb6bedc289' ________________________ GET /Trailers/{itemId}/Similar ________________________ 1. Test Case ID: uBqjMr - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-a4d1561cbc64f8767c27fac38a62dc6a-fecef42e1493750a-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Trailers/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?excludeArtistIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&limit=-2147483648&fields=AirTime' 2. Test Case ID: S0jxCj - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-3677dabb9173c85ba5526d3991bd1957-0f6c79fc23b99a55-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Trailers/e3e70682-c209-1cac-a29f-6fbed82c07cd/Similar?userId=null&userId=null' ____________________________ GET /UserItems/Resume _____________________________ 1. Test Case ID: qYYvLx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-5731e64267c62221d2a8d6da9f7492c7-e3f815bcb4832189-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/Resume?userId=null&userId=null' 2. Test Case ID: oPd8Yl - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-811769b887b451115034df7821d86222-46c78a8c2d3cbaf3-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/Resume?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 3. Test Case ID: AdpxqA - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `parentId` in query - violates `format` at /properties/parentId [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/Resume?parentId=' _______________________ GET /UserItems/{itemId}/UserData _______________________ 1. Test Case ID: oX0WIS - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-01a9b9b2cc8dafcef7c7e79d42dd0ccf-1d64b957d888fb60-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/e3e70682-c209-1cac-a29f-6fbed82c07cd/UserData?userId=null&userId=null' 2. Test Case ID: qiaEo5 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `format` at /properties/userId - header: violates `required` (was Authorization) [200] OK: `{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":true,"Played":false,"Key":"f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805","ItemId":"f137a2dd21bbc1b99aa5c0f6bf02a805"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/f137a2dd21bbc1b99aa5c0f6bf02a805/UserData?userId=' ________________________________ GET /UserViews ________________________________ 1. Test Case ID: VKIV08 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-d2401b62b0dccc2ae14b8e401e634142-03e5337cb417f1fe-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserViews?userId=null&userId=null' 2. Test Case ID: DFZjZT - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserViews?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 3. Test Case ID: COgZsg - Response violates schema -58800 is not valid under any of the schemas listed in the 'anyOf' keyword Validated against the response schema for status code 200. Schema at /components/schemas/BaseItemDto/properties/CollectionType: { "anyOf": [ { "enum": [ "unknown", "movies", "tvshows", "music", "musicvideos", "trailers", "homevideos", "boxsets", "books", "photos", "livetv", "playlists", "folders" ], "allOf": [ // Output truncated... } Value: -58800 [200] OK: `{"Items":[{"ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"6536cb48d16d2051f4aa4f0f4a2f80da","Etag":"6bf7d4b6a01e0e853b87175c57710b3f","DateCreated":"2026-10-10T08:04:44.6594798Z","DateLastMediaAdded":"0001-01-01T00:00:00.0000000Z","CanDelete":false,"CanDownload":false,"ExternalUrls":[],"Path":"/config/root/default/0291","EnableMediaSourceDisplay":true,"ChannelId":null,"Overview":"The war is over, and hero Dias is finally rewarded with land of his own\u2014only to discover it\u0027s a barren frontier wi // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserViews?userId=20b99d4a1e96434688703d116acb7c6c' 4. Test Case ID: eMfwvM - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `presetViews` in query - violates `enum` at /properties/presetViews/items [200] OK: `{"Items":[{"ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"6536cb48d16d2051f4aa4f0f4a2f80da","Etag":"6bf7d4b6a01e0e853b87175c57710b3f","DateCreated":"2026-10-10T08:04:44.6594798Z","DateLastMediaAdded":"0001-01-01T00:00:00.0000000Z","CanDelete":false,"CanDownload":false,"ExternalUrls":[],"Path":"/config/root/default/0291","EnableMediaSourceDisplay":true,"ChannelId":null,"Overview":"The war is over, and hero Dias is finally rewarded with land of his own\u2014only to discover it\u0027s a barren frontier wi // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserViews?presetViews=%C2%9A&presetViews=%0F' ________________________ GET /UserViews/GroupingOptions ________________________ 1. Test Case ID: GpDpmA - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [200] OK: `[{"Name":"0","Id":"1300b601aa71fce3ab7be0f09c67d615"},{"Name":"02","Id":"c943e52d135f537cc4b2876b0c91b6da"},{"Name":"03","Id":"89692d28c060d84a13156005d2da1940"},{"Name":"Movies","Id":"c8ca023cdbb96c78e4de5fcb477df512"}]` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserViews/GroupingOptions?userId=' 2. Test Case ID: ew0Cp0 - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-80db474a98f2055f8b2aa6929018ffdd-f42a86c9478ccd71-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserViews/GroupingOptions?userId=null&userId=null' __________________________________ GET /Users __________________________________ 1. Test Case ID: O5bKoj - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"isHidden":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-9cf1c80cf99fcebe1332c2aa7d628e18-4596b407bace992c-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Users?isHidden=null&isHidden=null' 2. Test Case ID: eIJe8c - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `type` at /properties/isHidden (was boolean, became string) - query: violates `type` at /properties/isDisabled (was boolean, became string) - header: violates `required` (was Authorization) [200] OK: `[{"Name":"-1.175494351e-38","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"b2171ed4ea454819b3ddca6b88e0f2f4","HasPassword":true,"HasConfiguredPassword":true,"HasConfiguredEasyPassword":false,"EnableAutoLogin":false,"Configuration":{"PlayDefaultAudioTrack":true,"SubtitleLanguagePreference":"","DisplayMissingEpisodes":false,"GroupedFolders":[],"SubtitleMode":"Default","DisplayCollectionsView":false,"EnableLocalPassword":false,"OrderedViews":[],"LatestItemsExcludes":[],"MyMediaExcludes":[],"HidePlayedInLa // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Users?isDisabled=&isHidden=' ________________________ GET /Users/AuthenticateByName _________________________ 1. Test Case ID: ov3QJc - Unsupported methods Unsupported method GET returned 400, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027AuthenticateByName\u0027 is not valid."]},"traceId":"00-b088c570dfcf6c87cbee8e6403e5cfdc-af71dbf39da70479-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Pw": null, "Username": null}' http://0.0.0.0:35675/Users/AuthenticateByName ___________________ GET /Users/AuthenticateWithQuickConnect ____________________ 1. Test Case ID: rwLmQA - Unsupported methods Unsupported method GET returned 400, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027AuthenticateWithQuickConnect\u0027 is not valid."]},"traceId":"00-b000cf426e47aa18a3faeab6872b5fdc-a3cd07cc12fa8e76-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Secret": "[Filtered]"}' http://0.0.0.0:35675/Users/AuthenticateWithQuickConnect ___________________________ GET /Users/Configuration ___________________________ 1. Test Case ID: LtJsf9 - Unsupported methods Unsupported method GET returned 400, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027Configuration\u0027 is not valid."]},"traceId":"00-0bdc2710a4d60fb65531ff7a85ad39a4-c9330b85b679dae1-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AudioLanguagePreference": null, "CastReceiverId": null, "DisplayCollectionsView": false, "DisplayMissingEpisodes": false, "EnableLocalPassword": "[Filtered]", "EnableNextEpisodeAutoPlay": false, "GroupedFolders": [], "HidePlayedInLatest": false, "LatestItemsExcludes": [], "MyMediaExcludes": [], "OrderedViews": [], "PlayDefaultAudioTrack": false, "RememberAudioSelections": false, "RememberSubtitleSelections": false, "SubtitleLanguagePreference": null, "SubtitleMode": "None"}' 'http://0.0.0.0:35675/Users/Configuration?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' __________________________ GET /Users/ForgotPassword ___________________________ 1. Test Case ID: 29wZTU - Unsupported methods Unsupported method GET returned 400, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027ForgotPassword\u0027 is not valid."]},"traceId":"00-1b5ec3338a6ebd7b87d71790feb8f762-33e1b324f87f8146-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"EnteredUsername": "0"}' http://0.0.0.0:35675/Users/ForgotPassword ________________________________ GET /Users/New ________________________________ 1. Test Case ID: IObEby - Unsupported methods Unsupported method GET returned 400, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027New\u0027 is not valid."]},"traceId":"00-e7ba32a78c2d1fcdd9227a417e0f8e51-c95cfae6db16610e-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "Password": "[Filtered]"}' http://0.0.0.0:35675/Users/New _____________________________ GET /Users/Password ______________________________ 1. Test Case ID: EMEmGf - Unsupported methods Unsupported method GET returned 400, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027Password\u0027 is not valid."]},"traceId":"00-97643c9e499c000c803dccde6d64f559-bd28e27ebe9c9f2a-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CurrentPassword": "[Filtered]", "CurrentPw": null, "NewPw": null, "ResetPassword": "[Filtered]"}' 'http://0.0.0.0:35675/Users/Password?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' _____________________________ GET /Users/{userId} ______________________________ 1. Test Case ID: e1JJPH - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-0f9d53270b3c47c650017e907ec500c2-e5c7fbf84d46e40c-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/null%2Cnull 2. Test Case ID: H5NsnV - Response violates schema "User not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "User not found" [404] Not Found: `"User not found"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd _____________________ GET /Videos/{itemId}/AdditionalParts _____________________ 1. Test Case ID: 2l7Jpr - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-bd54678e02d615706d6a9cebd95d5d45-6dc4217934c197d0-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/AdditionalParts?userId=' 2. Test Case ID: LvWe3z - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-74f3e976aa9f1d2040e4be7d1ebe550e-822fb414a64b97f2-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/AdditionalParts?userId=null&userId=null' ______________ GET /Videos/{itemId}/Trickplay/{width}/tiles.m3u8 _______________ 1. Test Case ID: Xu6eAA - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"mediaSourceId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2b0e550aba6da0886445d9241aaa621c-c86d7e34ee2582d1-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/Trickplay/-2147483648/tiles.m3u8?mediaSourceId=null&mediaSourceId=null' ______________ GET /Videos/{itemId}/Trickplay/{width}/{index}.jpg ______________ 1. Test Case ID: 0jLh7N - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"mediaSourceId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-acd6122f73cd3b9c59841ba12a32a7a1-76d40c207db37f86-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/Trickplay/-2147483648/-2147483648.jpg?mediaSourceId=null&mediaSourceId=null' _________________________ GET /Videos/{itemId}/stream __________________________ 1. Test Case ID: YWR2MI - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream?container=&static=true¶ms=&tag=&deviceProfileId=&playSessionId=%5BFiltered%5D&segmentContainer=&segmentLength=-2147483648&minSegments=-2147483648&mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=hooks&audioCodec=&enableAutoStreamCopy=true&allowVideoStreamCopy=true&allowAudioStreamCopy=true&audioSampleRate=-2147483648&maxAudioBitDepth=-2147483648&audioBitRate=-2147483648&audioChannels=-2147483648&maxAudioChannels=-2147483648&profile=&level=0&framerate=0&maxFramerate=0©Timestamps=true&startTimeTicks=-9223372036854775808&height=-2147483648&maxWidth=-2147483648&maxHeight=-2147483648&videoBitRate=-2147483648&subtitleStreamIndex=-2147483648&subtitleMethod=Encode&maxRefFrames=-2147483648&maxVideoBitDepth=-2147483648&requireAvc=true&deInterlace=true&requireNonAnamorphic=true&transcodingMaxAudioChannels=-2147483648&cpuCoreLimit=-2147483648&liveStreamId=&enableMpegtsM2TsMode=true&videoCodec=&subtitleCodec=&transcodeReasons=&audioStreamIndex=-2147483648&videoStreamIndex=-2147483648&context=Streaming&enableAudioVbrEncoding=true' 2. Test Case ID: iB2qGK - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-fce835546d2b250e6d484c729318f07a-d0b1812b4fb2d62c-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream?width=2147483648' 3. Test Case ID: CqE8iS - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream?mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=workbench' 4. Test Case ID: vAZU1w - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/9f0a65a3-f0f7-9088-dc28-dd8cfda10b42/stream?enableMpegtsM2TsMode=false&maxVideoBitDepth=1986721&maxAudioChannels=110743896&videoStreamIndex=-8373¶ms=%C2%A9%C3%AE%C2%B9%C2%95%1E%C2%B2%F3%BB%8F%8A%F2%8F%A6%91%1F%22%C3%B8' 5. Test Case ID: ByBIS5 - Undocumented Content-Type Received: audio/mpeg Documented: video/* [200] OK: Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/9f0a65a3-f0f7-9088-dc28-dd8cfda10b42/stream ___________________ GET /Videos/{itemId}/stream.{container} ____________________ 1. Test Case ID: YJp89i - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream.0?static=true¶ms=&tag=&deviceProfileId=&playSessionId=%5BFiltered%5D&segmentContainer=&segmentLength=-2147483648&minSegments=-2147483648&mediaSourceId=9f0a65a3f0f79088dc28dd8cfda10b42&deviceId=seed&audioCodec=&enableAutoStreamCopy=true&allowVideoStreamCopy=true&allowAudioStreamCopy=true&audioSampleRate=-2147483648&maxAudioBitDepth=-2147483648&audioBitRate=-2147483648&audioChannels=-2147483648&maxAudioChannels=-2147483648&profile=&level=0&framerate=0&maxFramerate=0©Timestamps=true&startTimeTicks=-9223372036854775808&height=-2147483648&maxWidth=-2147483648&maxHeight=-2147483648&videoBitRate=-2147483648&subtitleStreamIndex=-2147483648&subtitleMethod=Encode&maxRefFrames=-2147483648&maxVideoBitDepth=-2147483648&requireAvc=true&deInterlace=true&requireNonAnamorphic=true&transcodingMaxAudioChannels=-2147483648&cpuCoreLimit=-2147483648&liveStreamId=&enableMpegtsM2TsMode=true&videoCodec=&subtitleCodec=&transcodeReasons=&audioStreamIndex=-2147483648&videoStreamIndex=-2147483648&context=Streaming&enableAudioVbrEncoding=true' 2. Test Case ID: 7QPlaD - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"width":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-0ba82583556c1a3c635c8e681a208ef2-024467ab5972d417-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream.0?width=2147483648' 3. Test Case ID: PYWv8y - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream.mov%2Cmp4%2Cm4a%2C3gp%2C3g2%2Cmj2?mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=workbench' 4. Test Case ID: Qmzcui - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream.mov%2Cmp4%2Cm4a%2C3gp%2C3g2%2Cmj2 ____ GET /Videos/{itemId}/{mediaSourceId}/Subtitles/{index}/subtitles.m3u8 _____ 1. Test Case ID: abikGH - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"segmentLength":["The segmentLength field is required."]},"traceId":"00-478df85de447a533e2ff0135464ab9a0-ee7a470350a5279a-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/f6108439a07311ab057b17a8246e543a/Subtitles/-2147483648/subtitles.m3u8 2. Test Case ID: MusCU4 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/f6108439a07311ab057b17a8246e543a/Subtitles/4069/subtitles.m3u8?segmentLength=-4170570' GET /Videos/{routeItemId}/{routeMediaSourceId}/Subtitles/{routeIndex}/Stream.{routeFormat} 1. Test Case ID: 2i5Kzp - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/0/Subtitles/-2147483648/Stream.0?itemId=e3e70682-c209-1cac-a29f-6fbed82c07cd&mediaSourceId=9f0a65a3f0f79088dc28dd8cfda10b42&index=-2147483648&format=&endPositionTicks=-9223372036854775808©Timestamps=true&addVttTimeMap=true' 2. Test Case ID: IYrQYj - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/0/Subtitles/26/Stream.0?itemId=9f0a65a3-f0f7-9088-dc28-dd8cfda10b42&mediaSourceId=f3f27ee6f4f35441ac7ecd00d1ff3f3c' GET /Videos/{routeItemId}/{routeMediaSourceId}/Subtitles/{routeIndex}/{routeStartPositionTicks}/Stream.{routeFormat} 1. Test Case ID: pfRwa0 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/0/Subtitles/-2147483648/-9223372036854775808/Stream.0?itemId=e3e70682-c209-1cac-a29f-6fbed82c07cd&mediaSourceId=f6108439a07311ab057b17a8246e543a&index=-2147483648&format=&endPositionTicks=-9223372036854775808©Timestamps=true&addVttTimeMap=true' 2. Test Case ID: 1RgCfI - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/acf58acd-c7e0-3bf3-9d62-5c99399c162d/%60O%C3%AF%F3%AA%9E%82K4/Subtitles/1207975423/26184/Stream.%F3%91%B7%85?index=13664752&addVttTimeMap=true&itemId=9f0a65a3-f0f7-9088-dc28-dd8cfda10b42&mediaSourceId=9f0a65a3f0f79088dc28dd8cfda10b42' __________ GET /Videos/{videoId}/{mediaSourceId}/Attachments/{index} ___________ 1. Test Case ID: YJUUmW - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"index":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-d6b6aa46506fd6322e32c681e4e135e3-ad22ef914895132f-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/9f0a65a3f0f79088dc28dd8cfda10b42/Attachments/2147483648 __________________________________ GET /Years __________________________________ 1. Test Case ID: LIvvCh - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Years?startIndex=-2147483648&limit=-2147483648&sortOrder=Ascending&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&excludeItemTypes=AggregateFolder&includeItemTypes=AggregateFolder&mediaTypes=Unknown&sortBy=Default&enableUserData=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&recursive=true&enableImages=true' 2. Test Case ID: syvfcV - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `sortBy` in query - violates `enum` at /properties/sortBy/items [200] OK: `{"Items":[],"TotalRecordCount":230,"StartIndex":794}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Years?startIndex=794&sortBy=%C3%AD%EF%BF%BF&sortBy=%C3%AB%C3%90z&sortBy=' ______________________________ GET /Years/{year} _______________________________ 1. Test Case ID: gaqudf - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Years/-2147483648?userId=' 2. Test Case ID: FnonkU - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Years/-2147483647?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 3. Test Case ID: OnVg7j - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - violates `format` at /properties/userId [200] OK: `{"Name":"327680","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"d102c95d8b9291be48fef5e82c8757da","Etag":"543b6ca4c9f21c87d81daf7a932499c0","DateCreated":"2026-10-10T08:25:41.0619819Z","CanDelete":false,"CanDownload":false,"SortName":"0000327680","ExternalUrls":[],"Path":"/config/metadata/Year/327680","EnableMediaSourceDisplay":true,"ChannelId":null,"Taglines":[],"Genres":[],"PlayAccess":"Full","RemoteTrailers":[],"ProviderIds":{},"ParentId":null,"Type":"Year","People":[],"Studios":[],"GenreItems":[]," // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Years/327680?userId=' _________________________ GET /web/ConfigurationPages __________________________ 1. Test Case ID: lM5dX3 - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"enableInMainMenu":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-0c80d46b903c507e15156e4aec7d7b62-a2aa63b9b4b78774-00"}` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/web/ConfigurationPages?enableInMainMenu=null&enableInMainMenu=null' 2. Test Case ID: qoKJgE - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `enableInMainMenu` in query - violates `type` at /properties/enableInMainMenu (was boolean, became string) [200] OK: `[{"Name":"TMDb","EnableInMainMenu":false,"DisplayName":"TMDb","PluginId":"b8715ed16c4745289ad3f72deb539cd4"},{"Name":"Studio Images","EnableInMainMenu":false,"DisplayName":"Studio Images","PluginId":"872a78491171458da6fb3de3d442ad30"},{"Name":"OMDb","EnableInMainMenu":false,"DisplayName":"OMDb","PluginId":"a628c0dafac54c7e9d1a7134223f14c8"},{"Name":"MusicBrainz","EnableInMainMenu":false,"DisplayName":"MusicBrainz","PluginId":"8c95c4d2e50c4fb0a4f36c06ff0f9a1a"},{"Name":"ListenBrainz Similarity Provider","Ena // Output truncated...` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/web/ConfigurationPages?enableInMainMenu=' _____________ HEAD /Artists/{name}/Images/{imageType}/{imageIndex} _____________ 1. Test Case ID: 1RSAZB - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Artists/0/Images/Primary/-2147483648?width=2147483648' _________________________ HEAD /Audio/{itemId}/stream __________________________ 1. Test Case ID: yPNP9j - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream?container=&static=true¶ms=&tag=&deviceProfileId=&playSessionId=%5BFiltered%5D&segmentContainer=&segmentLength=-2147483648&minSegments=-2147483648&mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=&audioCodec=&enableAutoStreamCopy=true&allowVideoStreamCopy=true&allowAudioStreamCopy=true&audioSampleRate=-2147483648&maxAudioBitDepth=-2147483648&audioBitRate=-2147483648&audioChannels=-2147483648&maxAudioChannels=-2147483648&profile=&level=0&framerate=0&maxFramerate=0©Timestamps=true&startTimeTicks=-9223372036854775808&height=-2147483648&videoBitRate=-2147483648&subtitleStreamIndex=-2147483648&subtitleMethod=Encode&maxRefFrames=-2147483648&maxVideoBitDepth=-2147483648&requireAvc=true&deInterlace=true&requireNonAnamorphic=true&transcodingMaxAudioChannels=-2147483648&cpuCoreLimit=-2147483648&liveStreamId=&enableMpegtsM2TsMode=true&videoCodec=&subtitleCodec=&transcodeReasons=&audioStreamIndex=-2147483648&videoStreamIndex=-2147483648&context=Streaming&enableAudioVbrEncoding=true' 2. Test Case ID: qf0KYz - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream?width=2147483648' 3. Test Case ID: rLQr89 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream?mediaSourceId=f6108439a07311ab057b17a8246e543a' ___________________ HEAD /Audio/{itemId}/stream.{container} ____________________ 1. Test Case ID: 0FN2nG - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream.0?static=true¶ms=&tag=&deviceProfileId=&playSessionId=%5BFiltered%5D&segmentContainer=&segmentLength=-2147483648&minSegments=-2147483648&mediaSourceId=9f0a65a3f0f79088dc28dd8cfda10b42&deviceId=&audioCodec=&enableAutoStreamCopy=true&allowVideoStreamCopy=true&allowAudioStreamCopy=true&audioSampleRate=-2147483648&maxAudioBitDepth=-2147483648&audioBitRate=-2147483648&audioChannels=-2147483648&maxAudioChannels=-2147483648&profile=&level=0&framerate=0&maxFramerate=0©Timestamps=true&startTimeTicks=-9223372036854775808&height=-2147483648&videoBitRate=-2147483648&subtitleStreamIndex=-2147483648&subtitleMethod=Encode&maxRefFrames=-2147483648&maxVideoBitDepth=-2147483648&requireAvc=true&deInterlace=true&requireNonAnamorphic=true&transcodingMaxAudioChannels=-2147483648&cpuCoreLimit=-2147483648&liveStreamId=&enableMpegtsM2TsMode=true&videoCodec=&subtitleCodec=&transcodeReasons=&audioStreamIndex=-2147483648&videoStreamIndex=-2147483648&context=Streaming&enableAudioVbrEncoding=true' 2. Test Case ID: 1h3HBx - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream.0?width=2147483648' 3. Test Case ID: 70CRDb - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream.mov%2Cmp4%2Cm4a%2C3gp%2C3g2%2Cmj2?mediaSourceId=f6108439a07311ab057b17a8246e543a' ________________________ HEAD /Audio/{itemId}/universal ________________________ 1. Test Case ID: RA9O5T - Undocumented HTTP status code Received: 400 Documented: 200, 302, 404, 503, 401, 403 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/universal?userId=null&userId=null' 2. Test Case ID: 387p3X - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/universal?mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=workbench&userId=ff53c59634c440fc88ea6fcb6bedc289' 3. Test Case ID: nJ0m9K - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `maxAudioChannels` in query - violates `type` at /properties/maxAudioChannels (was integer, became string) [200] OK: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/9f0a65a3-f0f7-9088-dc28-dd8cfda10b42/universal?maxAudioChannels=' 4. Test Case ID: CehPk5 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 302, 404, 503, 401, 403 [500] Internal Server Error: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Audio/7e64e319-657a-9516-ec78-490da03edccb/universal?maxAudioBitDepth=110509&container=&container=&container=%F1%BD%9E%96t%C2%A3%C2%B20%06%0Di%F3%97%8D%93&container=%C3%B2%F1%8F%B1%B9%02r%C3%B1%F0%BA%B6%BB%C3%8A&container=&container=z%2A%C2%80&container=%C3%BE%7F%C3%BDO&container=%C2%9B%C3%AB%EB%86%B3%C3%8D%C3%81%01&container=H%C2%9D%C3%AB%C2%8B%1B%C3%9C%19%C3%B5%C2%80%C3%AB&container=%C3%B0%7Ff%C3%98%E2%9F%8Cj%C2%B9%2C%F0%9E%BC%B9%C3%83%7D9A%01%C3%9D%C3%A0%C2%82%C3%9B&container=%F2%BE%88%8F%C3%96+%C2%AB%40MxH%05%C3%90%2C%C3%9E%2Abs%F1%B3%9B%81%C3%B5%F3%AE%8F%94%15%23r&maxAudioSampleRate=-279&enableAudioVbrEncoding=false&maxAudioChannels=-268&audioCodec=%2Cz%7CZOZmzlaR1&mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=workbench&userId=2b688af9db6b42bd87f5b562dd69658e' ____________________ HEAD /Genres/{name}/Images/{imageType} ____________________ 1. Test Case ID: K5HnnK - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres/0/Images/Primary?width=2147483648' _____________ HEAD /Genres/{name}/Images/{imageType}/{imageIndex} ______________ 1. Test Case ID: RMZgGw - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Genres/0/Images/Primary/-2147483648?width=2147483648' ___________________ HEAD /Items/{itemId}/Images/{imageType} ____________________ 1. Test Case ID: mz6xNp - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary?width=2147483648' _____________ HEAD /Items/{itemId}/Images/{imageType}/{imageIndex} _____________ 1. Test Case ID: iDLt8W - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary/-2147483648?width=2147483648' HEAD /Items/{itemId}/Images/{imageType}/{imageIndex}/{tag}/{format}/{maxWidth}/{maxHeight}/{percentPlayed}/{unplayedCount} 1. Test Case ID: znWBsr - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary/-2147483648/0/Bmp/-2147483648/-2147483648/0/-2147483648?width=2147483648' _________________ HEAD /MusicGenres/{name}/Images/{imageType} __________________ 1. Test Case ID: stmbT9 - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0/Images/Primary?width=2147483648' ___________ HEAD /MusicGenres/{name}/Images/{imageType}/{imageIndex} ___________ 1. Test Case ID: hF9Wpn - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/MusicGenres/0/Images/Primary/-2147483648?width=2147483648' ___________________ HEAD /Persons/{name}/Images/{imageType} ____________________ 1. Test Case ID: s8OsIX - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons/Workbench/Images/Primary?width=2147483648' _____________ HEAD /Persons/{name}/Images/{imageType}/{imageIndex} _____________ 1. Test Case ID: RL0v9J - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Persons/Workbench/Images/Primary/-2147483648?width=2147483648' ___________________ HEAD /Studios/{name}/Images/{imageType} ____________________ 1. Test Case ID: rGXkm2 - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Studios/0/Images/Primary?width=2147483648' _____________ HEAD /Studios/{name}/Images/{imageType}/{imageIndex} _____________ 1. Test Case ID: nI3xLs - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Studios/0/Images/Primary/-2147483648?width=2147483648' _________________________ HEAD /Videos/{itemId}/stream _________________________ 1. Test Case ID: 6EWBL9 - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream?container=&static=true¶ms=&tag=&deviceProfileId=&playSessionId=%5BFiltered%5D&segmentContainer=&segmentLength=-2147483648&minSegments=-2147483648&mediaSourceId=9f0a65a3f0f79088dc28dd8cfda10b42&deviceId=hooks&audioCodec=&enableAutoStreamCopy=true&allowVideoStreamCopy=true&allowAudioStreamCopy=true&audioSampleRate=-2147483648&maxAudioBitDepth=-2147483648&audioBitRate=-2147483648&audioChannels=-2147483648&maxAudioChannels=-2147483648&profile=&level=0&framerate=0&maxFramerate=0©Timestamps=true&startTimeTicks=-9223372036854775808&height=-2147483648&maxWidth=-2147483648&maxHeight=-2147483648&videoBitRate=-2147483648&subtitleStreamIndex=-2147483648&subtitleMethod=Encode&maxRefFrames=-2147483648&maxVideoBitDepth=-2147483648&requireAvc=true&deInterlace=true&requireNonAnamorphic=true&transcodingMaxAudioChannels=-2147483648&cpuCoreLimit=-2147483648&liveStreamId=&enableMpegtsM2TsMode=true&videoCodec=&subtitleCodec=&transcodeReasons=&audioStreamIndex=-2147483648&videoStreamIndex=-2147483648&context=Streaming&enableAudioVbrEncoding=true' 2. Test Case ID: SiwQin - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream?width=2147483648' 3. Test Case ID: qEePIE - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream?mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=workbench' ___________________ HEAD /Videos/{itemId}/stream.{container} ___________________ 1. Test Case ID: CvGwIb - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream.0?static=true¶ms=&tag=&deviceProfileId=&playSessionId=%5BFiltered%5D&segmentContainer=&segmentLength=-2147483648&minSegments=-2147483648&mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=seed&audioCodec=&enableAutoStreamCopy=true&allowVideoStreamCopy=true&allowAudioStreamCopy=true&audioSampleRate=-2147483648&maxAudioBitDepth=-2147483648&audioBitRate=-2147483648&audioChannels=-2147483648&maxAudioChannels=-2147483648&profile=&level=0&framerate=0&maxFramerate=0©Timestamps=true&startTimeTicks=-9223372036854775808&height=-2147483648&maxWidth=-2147483648&maxHeight=-2147483648&videoBitRate=-2147483648&subtitleStreamIndex=-2147483648&subtitleMethod=Encode&maxRefFrames=-2147483648&maxVideoBitDepth=-2147483648&requireAvc=true&deInterlace=true&requireNonAnamorphic=true&transcodingMaxAudioChannels=-2147483648&cpuCoreLimit=-2147483648&liveStreamId=&enableMpegtsM2TsMode=true&videoCodec=&subtitleCodec=&transcodeReasons=&audioStreamIndex=-2147483648&videoStreamIndex=-2147483648&context=Streaming&enableAudioVbrEncoding=true' 2. Test Case ID: rIaj3J - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/stream.0?width=2147483648' 3. Test Case ID: FEZwy5 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/stream.mov%2Cmp4%2Cm4a%2C3gp%2C3g2%2Cmj2?mediaSourceId=f6108439a07311ab057b17a8246e543a&deviceId=workbench' 4. Test Case ID: jA7a0T - Undocumented Content-Type Received: application/octet-stream Documented: video/* [200] OK: Reproduce with: curl -X HEAD -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/9f0a65a3-f0f7-9088-dc28-dd8cfda10b42/stream.-b?audioStreamIndex=-7863906&profile=High+4%3A4%3A4+Predictive&segmentLength=502&videoCodec=' ____________________________ OPTIONS /Items/Counts _____________________________ 1. Test Case ID: 7DL0kB - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Counts?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&isFavorite=true' ____________________________ OPTIONS /Items/Filters ____________________________ 1. Test Case ID: EwI3yJ - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Filters?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&includeItemTypes=AggregateFolder&mediaTypes=Unknown' ___________________________ OPTIONS /Items/Filters2 ____________________________ 1. Test Case ID: L1sBtT - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Filters2?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&includeItemTypes=AggregateFolder&isAiring=true&isMovie=true&isSports=true&isKids=true&isNews=true&isSeries=true&recursive=true' ____________________________ OPTIONS /Items/Latest _____________________________ 1. Test Case ID: 5hFcpd - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Latest?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&includeItemTypes=AggregateFolder&isPlayed=true&enableImages=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&enableUserData=true&limit=20&groupItems=true' _____________________________ OPTIONS /Items/Root ______________________________ 1. Test Case ID: nTQNUZ - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Root?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' __________________________ OPTIONS /Items/Suggestions __________________________ 1. Test Case ID: ELXnU1 - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Suggestions?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&mediaType=Unknown&type=AggregateFolder&startIndex=-2147483648&limit=-2147483648&enableTotalRecordCount=true' __________ OPTIONS /Items/{itemId}/RemoteSearch/Subtitles/{language} ___________ 1. Test Case ID: ZtbUjA - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/RemoteSearch/Subtitles/0?isPerfectMatch=true' _________ OPTIONS /Items/{itemId}/RemoteSearch/Subtitles/{subtitleId} __________ 1. Test Case ID: G1InbS - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: GET List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/RemoteSearch/Subtitles/0 ______________________ OPTIONS /LiveTv/Recordings/Folders ______________________ 1. Test Case ID: 8KwOZt - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Recordings/Folders?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' _______________________ OPTIONS /LiveTv/Timers/Defaults ________________________ 1. Test Case ID: 5z7vtG - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/Timers/Defaults?programId=' __________________ OPTIONS /Plugins/{pluginId}/Configuration ___________________ 1. Test Case ID: BmaDqg - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/e3e70682-c209-1cac-a29f-6fbed82c07cd/Configuration _____________________ OPTIONS /Plugins/{pluginId}/Manifest _____________________ 1. Test Case ID: nessJc - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/e3e70682-c209-1cac-a29f-6fbed82c07cd/Manifest ____________________ OPTIONS /System/Configuration/Branding ____________________ 1. Test Case ID: 0lZgVn - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: GET List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CustomCss": null, "LoginDisclaimer": null, "SplashscreenEnabled": false}' http://0.0.0.0:35675/System/Configuration/Branding ______________________ OPTIONS /Users/AuthenticateByName _______________________ 1. Test Case ID: 4Q11Hu - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, GET List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Pw": null, "Username": null}' http://0.0.0.0:35675/Users/AuthenticateByName _________________ OPTIONS /Users/AuthenticateWithQuickConnect __________________ 1. Test Case ID: roG8w1 - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, GET List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Secret": "[Filtered]"}' http://0.0.0.0:35675/Users/AuthenticateWithQuickConnect _________________________ OPTIONS /Users/Configuration _________________________ 1. Test Case ID: g3icCF - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, GET List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AudioLanguagePreference": null, "CastReceiverId": null, "DisplayCollectionsView": false, "DisplayMissingEpisodes": false, "EnableLocalPassword": "[Filtered]", "EnableNextEpisodeAutoPlay": false, "GroupedFolders": [], "HidePlayedInLatest": false, "LatestItemsExcludes": [], "MyMediaExcludes": [], "OrderedViews": [], "PlayDefaultAudioTrack": false, "RememberAudioSelections": false, "RememberSubtitleSelections": false, "SubtitleLanguagePreference": null, "SubtitleMode": "None"}' 'http://0.0.0.0:35675/Users/Configuration?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' ________________________ OPTIONS /Users/ForgotPassword _________________________ 1. Test Case ID: aMZKXE - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, GET List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"EnteredUsername": "0"}' http://0.0.0.0:35675/Users/ForgotPassword ______________________________ OPTIONS /Users/Me _______________________________ 1. Test Case ID: cLtuWG - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/Me ______________________________ OPTIONS /Users/New ______________________________ 1. Test Case ID: xYCdkx - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, GET List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "Password": "[Filtered]"}' http://0.0.0.0:35675/Users/New ___________________________ OPTIONS /Users/Password ____________________________ 1. Test Case ID: yqMKYm - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, GET List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CurrentPassword": "[Filtered]", "CurrentPw": null, "NewPw": null, "ResetPassword": "[Filtered]"}' 'http://0.0.0.0:35675/Users/Password?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' ____________________________ OPTIONS /Users/Public _____________________________ 1. Test Case ID: jA4c46 - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: DELETE, POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/Public ___________________________ OPTIONS /Users/{userId} ____________________________ 1. Test Case ID: nHx2ws - Invalid Allow header `Allow` header does not match the schema — undocumented methods advertised: POST List exactly the methods this resource supports in `Allow` [405] Method Not Allowed: Reproduce with: curl -X OPTIONS -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd _________________________ POST /Audio/{itemId}/Lyrics __________________________ 1. Test Case ID: fIMLzm - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"fileName":["The fileName field is required."]},"traceId":"00-04304b826eecaba8aafb78f580d9073c-2fa0487d0e3b5df3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/plain' 'http://0.0.0.0:35675/Audio/e3e70682-c209-1cac-a29f-6fbed82c07cd/Lyrics?fileName=' 2. Test Case ID: xHaIyi - Response violates schema "No lyrics uploaded" is not of type "object" Validated against the response schema for status code 400. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "No lyrics uploaded" [400] Bad Request: `"No lyrics uploaded"` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/plain' 'http://0.0.0.0:35675/Audio/9f0a65a3-f0f7-9088-dc28-dd8cfda10b42/Lyrics?fileName=upload_workbench_1_20261010075917_3db84a0f3ed540c8988b038f89e30dbc.log' ______________ POST /Audio/{itemId}/RemoteSearch/Lyrics/{lyricId} ______________ 1. Test Case ID: uaZBEi - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-4ecd9ab9f468a7017ef135d02d4ba2ec-9349fb167fbd4cdc-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Audio/null%2Cnull/RemoteSearch/Lyrics/0 2. Test Case ID: gb9dol - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"lyricId":["The lyricId field is required."]},"traceId":"00-f879a60095d0a49dca29cc5783de4d84-1cc5f623b986914c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Audio/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805/RemoteSearch/Lyrics/%0D _______________________________ POST /Auth/Keys ________________________________ 1. Test Case ID: u5NlRv - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"app":["The app field is required."]},"traceId":"00-7a151bbf90c1899076c84fe35d1a34b9-7daf4c55252b0257-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Auth/Keys 2. Test Case ID: XgBgqv - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"app":["The app field is required."]},"traceId":"00-f42b0d99b293e7908f6f7116165c3cf9-aaf5080ac214abcd-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Auth/Keys?app=' _____________________________ POST /Backup/Create ______________________________ 1. Test Case ID: 7fmDyj - Undocumented HTTP status code Received: 400 Documented: 200, 403, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"backupOptions":["The backupOptions field is required."],"$.Database":["The JSON value could not be converted to System.Boolean. Path: $.Database | LineNumber: 0 | BytePositionInLine: 14."]},"traceId":"00-15777c445585f08a3cc356d41ee45191-28cf64c4b247aaaf-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Database": {}, "Metadata": false, "Subtitles": false, "Trickplay": false}' http://0.0.0.0:35675/Backup/Create 2. Test Case ID: gNkEWO - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 200, 403, 503, 401 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-e5702a8cdd710a4366840e28c1355a99-e6838bb359106358-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Backup/Create 3. Test Case ID: HKwBHy - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - violates `allOf` [200] OK: `{"ServerVersion":"12.2.0.0","BackupEngineVersion":"0.2.0","DateCreated":"2026-10-10T08:19:19.9087078+00:00","Path":"/config/data/backups/jellyfin-backup-20261010081919.zip","Options":{"Metadata":false,"Trickplay":false,"Subtitles":false,"Database":true}}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"`\u00dc5}": "Q"}' http://0.0.0.0:35675/Backup/Create _____________________________ POST /Backup/Restore _____________________________ 1. Test Case ID: znnUv9 - Undocumented HTTP status code Received: 415 Documented: 204, 404, 403, 503, 401 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-4558aa257192b58bffa3b487a648dcd7-6404eb6090009cc0-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Backup/Restore 2. Test Case ID: gUnda6 - Undocumented HTTP status code Received: 400 Documented: 204, 404, 403, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"archiveRestoreDto":["A value for the \u0027archiveRestoreDto\u0027 parameter or property was not provided."],"$.ArchiveFileName":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.ArchiveFileName | LineNumber: 0 | BytePositionInLine: 21."]},"traceId":"00-a25681ab6304debfe5b684c4ae5eff5c-55c3122470f1d12d-00 // Output truncated...` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ArchiveFileName": {}}' http://0.0.0.0:35675/Backup/Restore 3. Test Case ID: fvK0yK - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ArchiveFileName": ""}' http://0.0.0.0:35675/Backup/Restore ___________________________ POST /ClientLog/Document ___________________________ 1. Test Case ID: TK3DK9 - JSON deserialization error Response must be valid JSON with 'Content-Type: application/json' header: Expecting value: line 1 column 1 (char 0) - Missing Content-Type header The following media types are documented in the schema: - `application/json` - `application/json; profile="CamelCase"` - `application/json; profile="PascalCase"` [403] Forbidden: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/plain' http://0.0.0.0:35675/ClientLog/Document ______________________________ POST /Collections _______________________________ 1. Test Case ID: Jl2R5b - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Collections?name=&ids=&isLocked=true' 2. Test Case ID: 40FBe6 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"parentId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2ee363f471906a3f95aaa36ef69ec76e-6eb337bd680a004e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Collections?parentId=null&parentId=null' ____________________ POST /Collections/{collectionId}/Items ____________________ 1. Test Case ID: sf7oq2 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Collections/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items 2. Test Case ID: 6Fvx7B - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Collections/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?ids=e3e70682-c209-1cac-a29f-6fbed82c07cd' 3. Test Case ID: hypHjg - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `ids` in query - violates `format` at /properties/ids/items [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Collections/dc177b841b6ad1fd5cf3f7a174e5b691/Items?ids=%F2%B5%94%80%C3%BC&ids=%025%F2%97%94%9F%60%1Dd&ids=%C2%A4&ids=0%C2%9D%22&ids=%F3%AD%94%B3%C3%80%C2%95%C2%80%C2%B9n%F1%9D%97%A0%C2%B0p%C3%AE&ids=0%C2%9F&ids=%F1%A7%91%91%C2%8BI%F1%A9%A1%98%F0%A2%9A%B3%F3%BC%81%979&ids=Scunthorpe&ids=%17&ids=%24&ids=%7D&ids=%19&ids=%F2%AA%87%A2C%EC%A4%A9E%3B%F3%8B%BB%99%C2%B9%14%7F%C2%8A%F1%85%AC%A4I&ids=%F3%86%AA%B0&ids=%C2%A1S%C3%87%175&ids=%C3%88%13%F2%BF%BE%86&ids=Error&ids=%C3%AA%F1%89%A2%95%C3%B6%60%C3%BC~%C3%91%C2%A0i%7B%12%3C%0F%C3%92%F4%88%9A%A4%F0%9A%BB%9F%F3%93%B0%90%C2%83&ids=L%C2%96%3F%F3%9F%82%B2%F2%93%9B%96%C3%B4%5C%F1%92%B4%86%C2%B8J%0A%C2%83&ids=w%14%0A&ids=&ids=%3A%C3%97h%F2%B9%90%9D%C2%A2%C3%88%F1%81%A5%9D%0C%C3%B21%C2%86&ids=%F3%87%8B%9FR%C3%ACq%F1%BE%B3%A0&ids=R%7D%C3%A1%F2%82%83%97%C2%A7%F4%8E%82%83&ids=_%C3%90%C3%9C%C3%A3%F3%B2%84%AA%F2%A4%96%BF%28%C2%9D%28%C3%A8%F3%86%A7%9DS%5C%2F%C3%82Z%F2%A0%88%B7%C2%A4%1D%0A%C2%90.%0C%26%C2%A8%F0%B1%B3%9F%18z%C3%AA%09&ids=&ids=t%C2%B1%F0%B0%8A%A4W&ids=%C2%AE%C2%A5%7B%C3%97%C2%B2t&ids=%C3%8B%C2%8F%09%C3%8AO%C2%96%F0%AB%B1%B97k%C3%82%F3%98%87%B9%F1%8A%8B%AB&ids=%C2%95%1Cr&ids=%C3%97%F3%9B%92%B2%C2%90%25&ids=%C2%AC%10i%29%C3%81%C3%B6%C2%92&ids=F%09%F2%A3%B8%89-%7C%F0%AA%9F%BB&ids=&ids=%F2%A4%97%8Fj%C3%AC%C2%AEZ%F2%8F%80%91&ids=%C2%AD%7F%F4%8F%BB%B8&ids=%F0%A1%A4%B3B%17%F3%95%9B%97%2B%C3%B81v%C2%97%0F%C3%AB%C2%8A%C2%A9%C2%BE&ids=&ids=S%E0%A9%B5W%C2%9A%3E&ids=%C3%B8&ids=l%7F%C2%95-&ids=%C2%AE%E7%8C%A5%F1%AD%B1%B4%C3%8DRy%07%C2%90' ____________________________ POST /Devices/Options _____________________________ 1. Test Case ID: 96A3M4 - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-570b02fc4f123b9dbc808f4088bd4c9f-8d835f4f0a1b9de8-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Devices/Options?id=' 2. Test Case ID: U6Rpja - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"id":["The id field is required."]},"traceId":"00-af95aa26ca756bd8c0bfcd5afee7db76-6765519c886afe96-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CustomName": null, "DeviceId": null, "Id": 0}' http://0.0.0.0:35675/Devices/Options 3. Test Case ID: tYZeYh - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"id":["The id field is required."]},"traceId":"00-b8481b3a83034e3197a30ab73c74f1f0-b38e7a203b5e3656-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CustomName": "", "DeviceId": null, "Id": 0}' 'http://0.0.0.0:35675/Devices/Options?id=' 4. Test Case ID: vOSgx5 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - header: violates `required` (was Authorization) - body: violates `type` at /allOf/0/properties/CustomName/anyOf/1 (was null, became string) - body: violates `type` at /allOf/0/properties/DeviceId/anyOf/1 (was null, became integer) [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"DeviceId": -77743717053, "CustomName": "\u009d\u0007\u00ac[\t\u000e\u00d0~"}' 'http://0.0.0.0:35675/Devices/Options?id=4b9198ff583177f6ea3eb506f7b8321a' _______________ POST /DisplayPreferences/{displayPreferencesId} ________________ 1. Test Case ID: 5V9twi - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"client":["The client field is required."]},"traceId":"00-2cc146c19fc09a06a2e2177509653caa-d9b055ca0656dea1-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Client": null, "CustomPrefs": {}, "Id": null, "IndexBy": null, "PrimaryImageHeight": 0, "PrimaryImageWidth": 0, "RememberIndexing": false, "RememberSorting": false, "ScrollDirection": "Vertical", "ShowBackdrop": false, "ShowSidebar": false, "SortBy": null, "SortOrder": "Ascending", "ViewType": null}' 'http://0.0.0.0:35675/DisplayPreferences/0?client=' 2. Test Case ID: qfpKwI - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-9905257607f9a3eebfd018b0d04f7d95-7a59e3e382a11107-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/DisplayPreferences/0?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&client=' 3. Test Case ID: Z1HNyA - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - violates `type` at /allOf/0/properties/IndexBy/anyOf/1 (was null, became string) - violates `type` at /allOf/0/properties/CustomPrefs/additionalProperties/anyOf/1 (was null, became number) [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"IndexBy": "R\u00eb", "CustomPrefs": {"\u001b\u0091\u00ef\ud810\udcde": 5.604415245182549e+16, "k": 1.7976931348623157e+308}, "ScrollDirection": "Vertical", "SortBy": "(\u00cei\u00ff\u00a2H\u0097\ud9e1\udddb\u00f7_M#\u00e2o\u00c0\u0007\uda46\udf88\u00cad\u00f4t\u00f0;\u00de", "RememberIndexing": false, "ShowBackdrop": true, "Id": null, "ViewType": "{\u00b7"}' 'http://0.0.0.0:35675/DisplayPreferences/c8ca023cdbb96c78e4de5fcb477df512?userId=e8ec7d8357974cf79c3c6a8fbb281872&client=%F1%BE%99%BF8' ________________________ POST /Environment/ValidatePath ________________________ 1. Test Case ID: LpVFTt - Undocumented HTTP status code Received: 415 Documented: 204, 404, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-f2d76e12d6b8091134dff38a475cac97-5e1f99ea87b811ab-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Environment/ValidatePath 2. Test Case ID: 8m4ErI - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.Boolean. Path: $ | LineNumber: 0 | BytePositionInLine: 1."],"validatePathDto":["The validatePathDto field is required."]},"traceId":"00-f64a11b02508d9d19b8569fed6e47631-a262457ae2ff18a0-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IsFile": {}, "Path": null, "ValidateWritable": false}' http://0.0.0.0:35675/Environment/ValidatePath 3. Test Case ID: DIDpEH - API accepts requests without authentication Expected 401 or 403, got `204 No Content` for `POST /Environment/ValidatePath` [204] No Content: Reproduce with: curl -X POST -H 'Content-Type: application/json' -d '{"Path": "/config/data/playlists111111", "ValidateWritable": false, "IsFile": null}' http://0.0.0.0:35675/Environment/ValidatePath 4. Test Case ID: gb68Df - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `Authorization` in header - violates `required` (was Authorization) [204] No Content: Reproduce with: curl -X POST -H 'Content-Type: text/json' -d '{"Path": "/config/metadata/views/ff42704ef042964bfd793dc8f2bfc47a"}' http://0.0.0.0:35675/Environment/ValidatePath 5. Test Case ID: XEjoSh - Undocumented Content-Type Received: text/plain Documented: application/json, application/json; profile="CamelCase", application/json; profile="PascalCase" [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"ValidateWritable": true, "Path": "/config/data/backups/jellyfin-backup-20261010082640.zip", "IsFile": null}' http://0.0.0.0:35675/Environment/ValidatePath ______________________________ POST /Items/Counts ______________________________ 1. Test Case ID: g5pyIW - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-79c4214fe88a73b5e02ef2a108c876f6-a172c683fb10947a-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Counts?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&isFavorite=true' _____________________________ POST /Items/Filters ______________________________ 1. Test Case ID: HIo7Ri - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-3d3ebac819cc75b2a37837d129d1ee5a-adbebf79d6e857b1-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Filters?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&includeItemTypes=AggregateFolder&mediaTypes=Unknown' _____________________________ POST /Items/Filters2 _____________________________ 1. Test Case ID: 2WAu8Q - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-7a0a5af315504fafa20872aa4c79d24e-a1f74f3531cbde0c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Filters2?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&includeItemTypes=AggregateFolder&isAiring=true&isMovie=true&isSports=true&isKids=true&isNews=true&isSeries=true&recursive=true' ______________________________ POST /Items/Latest ______________________________ 1. Test Case ID: M0D8O1 - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-eb7dd046e87fc1dfa5738039463b9963-6b7487754b51d91d-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Latest?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&parentId=e3e70682-c209-1cac-a29f-6fbed82c07cd&fields=AirTime&includeItemTypes=AggregateFolder&isPlayed=true&enableImages=true&imageTypeLimit=-2147483648&enableImageTypes=Primary&enableUserData=true&limit=20&groupItems=true' ___________________ POST /Items/RemoteSearch/Apply/{itemId} ____________________ 1. Test Case ID: LqOORn - Undocumented HTTP status code Received: 415 Documented: 204, 404, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-4759ca418da170caf3872ae4fa36b349-461f7eae8237e474-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/RemoteSearch/Apply/e3e70682-c209-1cac-a29f-6fbed82c07cd?replaceAllImages=true' 2. Test Case ID: wXKQ24 - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"replaceAllImages":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-1002c497f8c2d580cd90cc8a97b95830-b4a26c828f5bbd69-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AlbumArtist": null, "Artists": [], "ImageUrl": null, "IndexNumber": 0, "IndexNumberEnd": 0, "Name": null, "Overview": null, "ParentIndexNumber": 0, "PremiereDate": "2000-01-01T00:00:00Z", "ProductionYear": 0, "ProviderIds": {}, "SearchProviderName": null}' 'http://0.0.0.0:35675/Items/RemoteSearch/Apply/e3e70682-c209-1cac-a29f-6fbed82c07cd?replaceAllImages=null&replaceAllImages=null' 3. Test Case ID: 98BQRh - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.DateTime. Path: $ | LineNumber: 0 | BytePositionInLine: 27."],"searchResult":["The searchResult field is required."]},"traceId":"00-36fba691cf51e714d7b196bb2438b752-f6f8d882718feee1-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"IndexNumber": -67231, "ProviderIds": {"": "", "!\u008d\ud997\udc0c\u0087\"\u00e4\u008a\u00ddZl": ""}, "Artists": [{"ProviderIds": {"*\u0099": "\u00d1", "\u00d6\u009b\udae6\udc3bN\udab5\udce1": "\u0099", "\u00c3\u00aa=": "gk\u00ba", "\u0084\u00d6`": ""}, "PremiereDate": "1470-07-16T06:13:41+22:50", "IndexNumberEnd": null, "Artists": [{"IndexNumberEnd": -39916801, "Overview": "=\u00ed\u00dd\ud95f\udf8e", "Artists": [], "Name": null, "IndexNumber": null, "PremiereDate": null, "SearchProviderName": "\u0082\t", "ParentIndexNumber": 9586, "ImageUrl": null, "ProviderIds": {"\u00c9\ud801\udf50\\\u0006\u008a\u00f4\udbd2\udcc7": "\u001a", "\u008a\u001e\u00d4%n\u0001": "", "\ud932\udc62\u0084\u009e\u0095h\u00e0\u0014\u0001\u00b0": "U\u0094B\ud99e\ude646\u0087\u00b8\u0019\u00ea*\u000fw\ud9e5\udcc1\u0011\u0096\u0086\ud9ff\udc22\u00c4", "\u000b[w\u008a\u00d9\uc8532\u00ac`": "\u0018u", "\u00b1": "\udbba\ude27\u009f"}, "ProductionYear": null}, {"PremiereDate": "1128-04-04T19:35:33.84Z", "IndexNumberEnd": -59, "ImageUrl": "\uda29\ude78\u00a6g\ud8a3\ude6fe[\u00b1>C\u00c7", "SearchProviderName": null, "IndexNumber": 119, "Overview": "", "Artists": [], "ParentIndexNumber": null, "Name": "\uda25\udd7f\u00b3\u00a4\u00e2", "AlbumArtist": null, "ProviderIds": {"\u009d\u0017J\ud86f\udfe9": "T\u00d9\u009a\u00d0\u001c\u009f\u00a9"}, "ProductionYear": null}, {}], "IndexNumber": null, "SearchProviderName": "AcceptedNegativeData", "Overview": null, "ProductionYear": null, "ParentIndexNumber": -81114005, "ImageUrl": "\ud9be\udecb\u00e1\u00da\u00a8|", "Name": null, "AlbumArtist": null}], "AlbumArtist": {"Overview": null, "Artists": [{}, {"ImageUrl": null, "ParentIndexNumber": -1211122}], "ProductionYear": -1199594, "IndexNumber": -291, "Name": "2026", "ImageUrl": "https://image.tmdb.org/t/p/original/oxmwmbqoO2cOPVo1wRjNHlAwyIz.jpg", "PremiereDate": "2026-10-10T08:01:50.0000000Z", "AlbumArtist": {"ParentIndexNumber": 474, "Overview": "In his desperate quest to return to the past, Guan Chao scours the world for the \"Burning Stone\" \u2014 the energy source capable of powering the Time Gun. But his search takes an unexpected turn when he accidentally falls into the Memory Bureau.\n\nTo find his way back to reality, Guan Chao must join forces with memory administrators Fang Tang, Bai Zhong, and others, clearing BUG beings layer by layer through the strata of memory. Yet as battle after battle draws to a close, what awaits him is far more than corrupted data\u2026 The deepest truth buried within memory itself is beginning to stir.", "ProviderIds": {"\u000b\u00fc": "A.\u00ea\u001f\\\uda16\uddb9&", "\u001c!\udaa7\udc6c\u0082%\u00c4\u00ad\u00ff\uda5f\udf7b2\udb9d\udecb}": "\ud8eb\uded3\u00e3\u00e8c", "\u369b\u00fc\udb76\udc30": "JsonSchemaError"}, "ProductionYear": 9395, "SearchProviderName": "TheMovieDb", "AlbumArtist": {}}, "SearchProviderName": "\u00eb\u00cc", "IndexNumberEnd": null, "ParentIndexNumber": null, "ProviderIds": {"\ud8b4\ude04\ud862\udea7\uda41\udc8f\u001f\u0086": "+\u00cf\u001d\udbfe\udc13"}}, "ImageUrl": "https://image.tmdb.org/t/p/original/3HSov8EW2fI3oQbUJxOvnf684ej.jpg", "ProductionYear": 84383138, "PremiereDate": "2026-10-10T08:03:46.9898806Z", "Overview": null}' http://0.0.0.0:35675/Items/RemoteSearch/Apply/ba9c5cad-4ccd-8753-66bf-54fd50e04928 4. Test Case ID: ec02VP - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - violates `type` at /allOf/0/properties/ImageUrl/anyOf/1 (was null, became boolean) [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Overview": "\u00d6", "ImageUrl": false}' 'http://0.0.0.0:35675/Items/RemoteSearch/Apply/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805?replaceAllImages=true' ________________________ POST /Items/RemoteSearch/Book _________________________ 1. Test Case ID: lOxhR4 - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-27e4b56051e5c68662164a4ba6f46d39-cdc532e2b1123151-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/Book 2. Test Case ID: M9Y2HQ - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-04651c66b725c4fa78cfc9a1b2456cd0-db16c7e35e972c76-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Book 3. Test Case ID: Wodm4k - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/Book 4. Test Case ID: 1uFdXI - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> SeriesName: Incorrect type [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "2000-01-01T00:00:00Z", "ProviderIds": {}, "SeriesName": false, "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Book _______________________ POST /Items/RemoteSearch/BoxSet ________________________ 1. Test Case ID: 7EFBkU - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-f32ca5366bc1f6ba23e9185d994fb150-4420943d4f3a7155-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/BoxSet 2. Test Case ID: t6NJtx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-eb8be40d69700f25bafa2804005ee239-dc9f76b84c7d3423-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/BoxSet 3. Test Case ID: KzC8QF - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/BoxSet 4. Test Case ID: kPiL7H - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> PremiereDate: Value not matching the 'date-time' format [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "", "ProviderIds": {}, "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/BoxSet ________________________ POST /Items/RemoteSearch/Movie ________________________ 1. Test Case ID: UEe7J5 - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-774f8f23db9fbf2ec64c0f5e79472371-40d6e1c740fbe09f-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/Movie 2. Test Case ID: EwHBGc - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-d323f14843fb584328c18eb85ecd35cf-420e106cdd4918b1-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Movie 3. Test Case ID: QyGjVD - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/Movie 4. Test Case ID: fWIS58 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> PremiereDate: Value not matching the 'date-time' format [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "", "ProviderIds": {}, "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Movie _____________________ POST /Items/RemoteSearch/MusicAlbum ______________________ 1. Test Case ID: 9tkOnb - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-3de004b972b47c83ff3747148cebe168-199b2c166fdad9db-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/MusicAlbum 2. Test Case ID: aM8pGi - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-b8691806d5fd3f8d2bede263a24b785f-4ae44ec36ae00996-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/MusicAlbum 3. Test Case ID: CCk6vh - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/MusicAlbum 4. Test Case ID: IskWk5 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> SongInfos -> Array with invalid items: Artists: Incorrect type [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"AlbumArtists": [], "ArtistProviderIds": {}, "IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "2000-01-01T00:00:00Z", "ProviderIds": {}, "SongInfos": [{"Album": null, "AlbumArtists": [], "Artists": [null, null], "IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "2000-01-01T00:00:00Z", "ProviderIds": {}, "Year": 0}], "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/MusicAlbum 5. Test Case ID: XwF3Gp - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.DateTime. Path: $ | LineNumber: 0 | BytePositionInLine: 34."],"query":["The query field is required."]},"traceId":"00-0ba8a27bf0e150079e03036618f10d04-2ffc3bb4faedb917-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"SearchInfo": {"ParentIndexNumber": null, "SongInfos": [{"Album": null, "Path": "\udbd6\uddda}", "PremiereDate": "0699-11-04T13:57:30.985107-14:55", "Artists": null, "ParentIndexNumber": null, "ProviderIds": {"\u0098\u0004\udb8f\udf78": "\u008dM\u0004\u0171\u00db\u00ca\ud9ff\uded5\u009d\u00dc\udae7\udedf\udb8c\udda6\u00dd\u00ba\u00d4\udaa8\uddbe", "": null, "B": null}, "IsAutomated": true, "IndexNumber": null, "OriginalTitle": null, "MetadataLanguage": "`", "Name": "@m\u00e5d\udaa4\udfeeHY\udac4\udc77\ud8a3\udef3\u0017\u009a1}\u009a", "AlbumArtists": ["\ud8f0\uddf8\u00e2\u00c7\ud85c\udd72\u00a3", "", "\ud9fb\udcd21\u0094\u009f", "\u00e3V#]B'"'"'\u009c\r\u009b\ud8a5\ude9dm\uda6b\udc5f\udb3d\udc0c", "\uda4b\udca1", "\u00d5\u00b5\u00f2\u00fb\u00d5", "\ud886\udfd1\u00dbM\u00fa\u009f\ud8c7\udf53\u00d2j"], "MetadataCountryCode": "x\udbd3\ude81", "Year": -249}, {}, {}, {"ProviderIds": null, "IsAutomated": false, "Name": null, "ParentIndexNumber": 2147483646, "AlbumArtists": ["\u00fc\ud9a8\udc97", "xsq\u00c1v\ud8a7\udfb3\u00b8gl\udac0\udf4f\ud88d\ude2cmB\u00f4\u0083", "", "V\u001d\u00b2L\udb40\udcb5\udb5c\ude96\udbed\udc62M\u0013h\ud80b\udcb3"]}, {"ProviderIds": null, "PremiereDate": "0450-02-01T19:51:49.8+17:24", "Artists": ["\u6127V\u00cd", "\ud9d0\udd50\u00a2\udbf2\udc19\u00f0\u000f\u00f1\u00e0\u00b8", "\u00e7\u008eiP\u008c\u0083\u00f3", ",", "\u0001\u00d1]\u00d8\u00ac\udadb\udf71\u001d\udb5f\udd0f", "\u000e ]\u00a5\u0082", "\u0013\u008e\u00bf", "\u0287\u01dd\u026f\u0250 \u0287\u1d09s \u0279olop \u026fnsd\u1d09 \u026f\u01dd\u0279o\u02e5", ""], "Album": null, "AlbumArtists": ["\ud911\udd475\u0006\u00c2", "P", "\u00c2\rW\u0094\u001e", ".s\u0092V \udb14\udc2a", "\u008e\u00e9"], "Path": ""}, {"MetadataLanguage": "\u00f3\u00a9\u00f9\u0098\u00f9\u000b?\ud90f\udeaal@\u00c6E\u00e7\u0004\u6807\u0004\ud992\udca4", "IsAutomated": false, "Path": "]e\u00e6\u0097\u00a1\u00d6\u001b\u00d7\u00fa\u0083", "Year": 19515040, "Name": "\u0090\u0090&", "PremiereDate": null, "AlbumArtists": [], "OriginalTitle": null, "MetadataCountryCode": "if", "Artists": null, "ParentIndexNumber": -499451701}, {"Path": ""}, {"PremiereDate": "0266-08-09T21:05:19-13:04", "Year": -257, "MetadataLanguage": "r", "Album": "`\u0081\u00db\u00bc\u0092\udb8a\udcefY\udac5\udef8\u00cb\u00f2\udb21\uddbf\ud9c5\udf00\u00eb"}, {"Name": null, "MetadataCountryCode": "", "PremiereDate": "3950-02-09T11:01:24.0189+06:27"}, {"Year": null, "Path": null, "Album": null, "ProviderIds": {"1/0": null, "}\u001b\udaf4\udd55%\u0011\u0003": "\ud822\udc69\u00b6\ud81b\uddc4"}, "MetadataCountryCode": "\ud87d\udfac\b\u0018", "IndexNumber": null, "MetadataLanguage": "\u0087\u00e7\u00a0\\\u00f1\u00c7\u0088Q_4\uda30\uddc5", "ParentIndexNumber": 1399, "AlbumArtists": null}, {"OriginalTitle": "\u00e6\u0012", "MetadataLanguage": null, "Path": null, "Name": "\uda19\udef3\u00f9C\u00d7", "ProviderIds": {"": null}, "IndexNumber": null, "Artists": ["\n\ud8c1\udf25", "\u00ed\u0097\u0082|\uda22\ude62\u0086wNv\u00f8Z\u0086w;", "B\u00f4\u0084", "\u0098\u0012\u008dA\\\u00d4\u00a2\u0083/\u00fc", "M\u00e0\uda5a\udeee(4\u0014", "\u0085.", "[\u00cd\u00c2\ud8a4\ude4f{^:", "\u00df'"'"'\u00bc\udbb9\udffd"], "Album": "zJ\ud97a\udc92\u88f5\udb9b\udfe1b\u00b6\u0016SU\u00ce\u000e\u009d\u0016\ud9e2\ude36n", "IsAutomated": true}, {"IndexNumber": -134217728}, {"OriginalTitle": ""}, {"PremiereDate": "0446-03-12T17:14:17.50858+12:11", "MetadataLanguage": null, "Path": "\u008b\ud985\udd0e*\u00e6\u00e46\u00e2\ud91a\ude25VI\ud9a0\udc8b^\ud8fd\udd85\u0012\udac0\udc46\u00aa", "Artists": ["\u00fb\u009d\u00cat\u00a4\u0012\ud895\uded1\u009c\udab6\udd37", ""], "AlbumArtists": null, "MetadataCountryCode": "'"'"'\u00e8\uda3f\udd36z\u0004\u009b\u009e-\udbdf\udfe1C$\u008c\u0087\u00d4\u00ddzZ\u00fb", "Album": null}, {"ParentIndexNumber": null, "ProviderIds": {}, "OriginalTitle": null}, {"MetadataLanguage": null, "Artists": ["\u00a1j\udaf1\udfa8\u00ad", "q", ""], "Year": null, "OriginalTitle": null}, {"PremiereDate": "1457-10-12T23:32:39.76368-06:08", "Path": "8\u00be\u00c28\u0081\u0098\ud97d\udff5 L\ud91b\uddbb\u00d3\udbd1\uddb2\u00fc6", "IndexNumber": null}, {"Artists": null, "Path": null, "ProviderIds": null, "OriginalTitle": "\u0096\ud8f0\udd9e\u00fb\u00f9\u00d6-\\E*\u008e\u009a", "Name": null}, {"PremiereDate": "0320-12-18T07:27:05Z"}, {"ParentIndexNumber": 68103110, "Path": null, "Name": null, "IsAutomated": true, "MetadataLanguage": null, "Album": null}, {"IsAutomated": false, "Name": null, "IndexNumber": null, "MetadataLanguage": "\u00bd\u00f2C\"gc-N\u00bdUA\udac6\udd8a", "OriginalTitle": null, "AlbumArtists": null, "ProviderIds": null, "Album": "-mM\u8729\u00e0\ud97b\udec9", "Artists": null, "Path": "\u0019\u0004", "ParentIndexNumber": null, "PremiereDate": "4226-01-28T23:01:53+09:53", "MetadataCountryCode": "L\u00ebf\u00d1\u00ed\ud81b\udfd6", "Year": -5467473}, {"Artists": ["kq"], "PremiereDate": "4130-12-17T13:21:12.415689Z", "IndexNumber": -5105, "ParentIndexNumber": null}, {"PremiereDate": "0015-10-23T13:39:49.0-13:04", "MetadataCountryCode": null, "IsAutomated": true, "Album": null, "Name": "", "OriginalTitle": "Go\u00ce\udac1\udee4I\u00d0R\ud873\udffb\u00e8\u009c\u00dd\u009e!\u00feA\u0099m\ud861\udeb4\u008e\uda1c\udd4e\u00c2'"'"'\u00ee\udab3\ude5a%\udaa3\ude90\u0084\"\u00a0\u0091\u00f2M"}, {}, {"Year": null, "IndexNumber": -28191, "MetadataCountryCode": "\udbc0\udfaf\uda65\udd25\u00e6\u00fer\u00f2\udb4e\udce3\ud9ae\ude79\u0094\u0093", "Name": null, "ParentIndexNumber": null, "ProviderIds": null, "Album": null}, {}, {"MetadataLanguage": "\u000b\ud82f\udd8f\u00df", "OriginalTitle": null, "Year": null, "ProviderIds": {"0\u0012\u0019e\rNt": null, "\u009e": null, "\uda70\udff2\u00e7\u009a\uda67\udfb3\u0015": "3", "": "\u00b1i}~\u00f6\uda25\ude3a", "\udafb\udfd2\u0082": "categories"}, "Path": "", "Artists": [], "IndexNumber": null, "AlbumArtists": null, "MetadataCountryCode": "/\u00b0", "ParentIndexNumber": null, "Name": "\u00e5\u0012"}, {"Path": "\u00e4\u0015\u0016x\ud850\ude76\u0083l\u00d2", "Name": null, "IsAutomated": true, "Artists": ["\u000b\udb45\udf3f", "T\u00a8y\u00d4c\u00d4n", "\u00fe\u00e7\udba7\ude03'"'"'\u009c", "8\u0019?", "\u00e3", "", "C", "'"'"'\ud96d\udcb7\u022b\u0005M", "\u00cfn$\u0092\u0007\\", "", "\u001a\u00f2<\u00fd\u009a\udadb\ude49\u008f\u0081\ud87d\udf8c5.Q"], "AlbumArtists": null}, {"MetadataCountryCode": null, "Path": null, "Year": null, "ParentIndexNumber": null, "MetadataLanguage": null, "Album": "\u00be#:\u001f1\u00d34\u0001\u00ad\ud849\uddef\u0088\u00c7\u00c6\udaee\udd8ex\u00a4\udbd3\udf70K\u00d1\"", "AlbumArtists": null, "OriginalTitle": null, "ProviderIds": {"\ud943\udc0c": "\u0014\u0089"}, "PremiereDate": "0230-09-16T04:36:08-04:40", "Name": null, "IsAutomated": true, "IndexNumber": 1776, "Artists": ["\u00e2B\u00dc", "\udb2d\udefe\u0019", "\u0094\u00c3\u00d5", "n\u0087y\u0084", "", "\u00ad\udb1c\udd9b\ud800\udfdb", "", "", "\u00fe"]}, {"Album": null, "Artists": ["/RY\u0093\u00a2\udaa6\ude08", "", "\u00d8\udb1f\ude04\udbea\uddfc\u00ebP\u00f7i", "\u008a\u00da\u0093D\udba2\udc8e\u00f3"], "Year": 273, "MetadataLanguage": null, "AlbumArtists": ["\udb92\udea5\u00d8\ud83a\udfe0\r\u00bd", "", "\u0099", "", "\ud925\udc60\u0006"], "PremiereDate": "0600-05-03T17:02:57.1-09:37", "OriginalTitle": "\u00ba\u00e2=\udbd8\udd6fp\u0002\u00b0\ud8c8\ude0ef", "ProviderIds": {}, "Name": null, "ParentIndexNumber": null}, {"MetadataCountryCode": null, "PremiereDate": "0423-12-01T16:38:46+11:12", "OriginalTitle": null, "MetadataLanguage": null}, {"PremiereDate": "0166-09-01T17:40:00.7317+04:43", "Name": null}, {"ProviderIds": null, "IsAutomated": false}, {"AlbumArtists": ["\u00c7F\udbed\udf47", "", "\u0099\tc\u00fe\ud984\uddd1\u00e8\u00fd\ud9cb\udf0b\u0084", "\u008d", "\u0004\u0005e\u00ba\udb9a\udd44\u001d\r\u0090\u00bd\u00e5\r"], "Year": 1609462, "IsAutomated": false, "ParentIndexNumber": null, "Path": null, "Album": "L", "ProviderIds": null, "Name": "r"}, {"Year": 678949, "OriginalTitle": "\u00ee\u00f1\u0095l\ud8fb\udebc\u00fa\u00e9\u00de\u00d6\u0095t\u00f0A\u001d\u00e5\u000e", "ProviderIds": {"\u00f8\u00f7\u00be{\u00b9\u00aay\u00eb\u0094\u00db": "\u001dg\u00ea", "`\u000f,\ud9dc\uded8R\u0088\u00b7*\u00f4)\ud9e3\ude68": null, "\u009e": "\udb0c\udcf3\u0019\ud822\udd96"}, "MetadataLanguage": null, "AlbumArtists": ["\udb41\udc10)\ud9ee\udd7b\u00e2X"], "Path": null, "IsAutomated": true, "Artists": null, "PremiereDate": null, "ParentIndexNumber": -558, "MetadataCountryCode": ":\udb23\udd70\u00be\u00e6\ud945\udce8", "IndexNumber": null}], "IsAutomated": true, "Path": null}, "SearchProviderName": "MusicBrainz", "IncludeDisabledProviders": true, "ItemId": "d8c0254b-64a9-5b62-be89-2ffd58207dd1"}' http://0.0.0.0:35675/Items/RemoteSearch/MusicAlbum _____________________ POST /Items/RemoteSearch/MusicArtist _____________________ 1. Test Case ID: KvFwE8 - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-27c9b36e849b67b66cda2fe7c63d16d0-ee787634726741e0-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/MusicArtist 2. Test Case ID: mShvK9 - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-a793d3b60095ff7244fa2bb7dc3fcbb1-bf8f0ab2ac21ebf8-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/MusicArtist 3. Test Case ID: DVFHYl - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/MusicArtist 4. Test Case ID: 1uQmV7 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> SongInfos -> Array with invalid items: Artists: Incorrect type [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "2000-01-01T00:00:00Z", "ProviderIds": {}, "SongInfos": [{"Album": null, "AlbumArtists": [], "Artists": [null, null], "IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "2000-01-01T00:00:00Z", "ProviderIds": {}, "Year": 0}], "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/MusicArtist 5. Test Case ID: U54IYJ - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.DateTime. Path: $ | LineNumber: 0 | BytePositionInLine: 27."],"query":["The query field is required."]},"traceId":"00-8b5240f3ac0d441ef77a09c1e4d7c57d-e4eda295769ac888-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"SearchProviderName": null, "ItemId": "d55757c5-b1fb-4528-bb50-61d5b65cf999", "IncludeDisabledProviders": true, "SearchInfo": {"IsAutomated": true, "SongInfos": [{"PremiereDate": null, "MetadataCountryCode": null, "IndexNumber": null, "Album": "\u0090", "OriginalTitle": "kj\udb98\udd61\u009dH\ud962\udc75", "AlbumArtists": null, "MetadataLanguage": "\u00a3w-\u00a1%%\ud88e\udec9\u009cZ", "ProviderIds": {"\uc8c7\u001b\u000f\udb30\uddf8\ud84f\udce5\u00fdU\udb75\udfd4\u0087\ud8e6\udd4c\udb1b\udd9c,\u0004\uda57\udf1f\u00c5\u0005\u009f\u00af\ud9b3\udd9e^WW\u00a6\u00e6\u0086": "\u008a\u00c7v"}, "Path": "&\u00ca", "Year": 5583, "ParentIndexNumber": null, "Artists": null, "IsAutomated": true, "Name": null}, {}, {"Path": "", "Year": null, "MetadataLanguage": null, "Artists": null, "ParentIndexNumber": 70993139, "ProviderIds": {"": "", "\ud962\udf28\u00b8\u00ed\u00bf": null, "\u001d\u00f7": null, "{9\u008es": null}, "PremiereDate": "0553-09-11T15:10:31-02:27", "Name": "\ud85f\udd35\u00ab\u00a7\u00cfh\u00ab", "OriginalTitle": null}, {"Year": null, "AlbumArtists": null, "IsAutomated": true, "MetadataLanguage": "UseAfterFree", "Artists": null, "ProviderIds": {"\u00fd\u00d7d\u0089\u00022\u00cdZ": "\u00d7\uda72\uddcf", "\udad1\udfc5\ud885\ude7b\u669c\u0083k@\udb1b\udcb5\u00f1\u0019\u0082j": null, "Inf": "if", "\udbe5\udf04\u0004\u0000\u00a3\u00a0\u000b\u00a9\u0004F\udb20\udc96": null, "\ud9f9\udeca\uda4b\udc30": null}, "OriginalTitle": null, "Album": "\udbf3\udde2\u00ce\u00b1\u009e\u00d2\u00e1", "ParentIndexNumber": 5814}, {"Name": null}, {"Album": "\ud810\ude91`\u00a1\u00ed\ud803\udc88\u00b3\udb02\udec7\u00a2\u0006C\u00f0m\u0019p@e", "Year": null, "OriginalTitle": null, "ParentIndexNumber": 542}, {"ProviderIds": null, "Album": "\u009d", "ParentIndexNumber": null, "OriginalTitle": "\u00d2s\u0085}(\u00e157\u00ef", "Name": null, "IsAutomated": false, "Path": "\u00b1", "Artists": null, "PremiereDate": null}, {}, {"AlbumArtists": null, "MetadataLanguage": "\udbc1\udd0fTi\u00e1Q\u00a0", "ProviderIds": {"\u00aayn\u001b": "", "\u008eR\udbcc\udc98\ud9f5\udde8u\ud947\udc83\udb6d\ude04\u0084\u00a7": null, ":|?'"'"'": null, "\ud88f\udd81\u00c9\u00fc\u00cb\u00bc\u0007\udae5\ude684\ud881\udcf6e\u00a58iT": "\ud801\udc13\udb9a\udfc0", "": "\udaac\udea1"}, "OriginalTitle": null, "ParentIndexNumber": -1556, "Name": "\u0080", "Path": "\u00a8\uda78\udf94\ud9dd\udcd9\u00a1", "Artists": ["", "\udbec\ude8d\ud838\udfdb\ud8cb\udce4\u0099]\u0089", "\ud87e\udd44", "\u00035", " \u00af\ud8d1\udf8b", "\u0016\u008a\u00ectB\uda00\udc06D\u00b2", "I\ud957\ude6e\u00daL\u00ad\u00db\u00c2D", "", "9", "", "\u0016\ud853\ude2b\u008f\u0096", "\udb0b\uddc9\u00ef\u00d6", "\u000f\u5561", "\\\u00b8/\u00b81\u00b0\u00fe\u00e1\u00e7", "\u0003v/\u0000", "\u00b8", "f\udb01\udf8e", "R\uda7a\uddd5\u00d2\ud9a1\udc93\u009c", "\u00f1h\u008a", " (O\uda31\ude1f\u00d6\u009c\u00f5\u0015\u00e7\u00d2]A\u00db\u00cf\u00ee\u0010z^", "\u00d9\u009d\udb0a\udce7(\u00b2\u00d0", ""], "Year": null, "Album": null, "IndexNumber": null, "IsAutomated": false, "PremiereDate": "0072-04-03T16:52:55+19:10"}, {"MetadataLanguage": null, "ProviderIds": null, "ParentIndexNumber": null, "Name": "\u00d2"}, {}], "Name": "playlists111111111111111111111111111111111", "MetadataCountryCode": "", "OriginalTitle": null, "Year": 495918}}' http://0.0.0.0:35675/Items/RemoteSearch/MusicArtist _____________________ POST /Items/RemoteSearch/MusicVideo ______________________ 1. Test Case ID: MMxODZ - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-af71ada46860d00cac3c892a87aab7ee-9c6b8fc53f61a7fc-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/MusicVideo 2. Test Case ID: 27emYn - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-709096307525fcad589ea7a233174e74-d2cdce13fff28e21-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/MusicVideo 3. Test Case ID: CFtU2p - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/MusicVideo 4. Test Case ID: UpRwFS - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> Artists: Incorrect type [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"Artists": [null, null], "IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "2000-01-01T00:00:00Z", "ProviderIds": {}, "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/MusicVideo _______________________ POST /Items/RemoteSearch/Person ________________________ 1. Test Case ID: 7pW1dv - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-6997ce1cecdde6f7e18466ac7533e388-1e73354bbc2e3e4a-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/Person 2. Test Case ID: xoc2Lf - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-1cea5dc5eb9eb5917c79f39a871b5077-2a6d26434a9c2e0b-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Person 3. Test Case ID: WhNco2 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/Person 4. Test Case ID: sp5tH2 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> PremiereDate: Value not matching the 'date-time' format [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "", "ProviderIds": {}, "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Person _______________________ POST /Items/RemoteSearch/Series ________________________ 1. Test Case ID: Koaty7 - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-4138566a8c264d5ed8a2dcdc9e93cf6c-c1f8610bef293e9f-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/Series 2. Test Case ID: BOfdKc - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-2600cc0d4228a8958ef787bd764e5532-7e585aaeb75ef6f2-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Series 3. Test Case ID: ATarep - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/Series 4. Test Case ID: 2b86IO - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> PremiereDate: Value not matching the 'date-time' format [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "", "ProviderIds": {}, "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Series 5. Test Case ID: VaNNcP - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.DateTime. Path: $ | LineNumber: 0 | BytePositionInLine: 31."],"query":["The query field is required."]},"traceId":"00-7ae9f2d3623d4e26ac747186ccb8059f-562170ab69daff3e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"IncludeDisabledProviders": false, "ItemId": "d3ead05c-5227-1c7d-8453-e320ef851220", "SearchInfo": {"PremiereDate": "0065-04-22T12:00:33.670+17:43", "MetadataLanguage": null, "Name": "\u00a1\u00c6\u00ee\u00ebO\u00e9", "MetadataCountryCode": "", "ProviderIds": {"1\u0089E\u001a\u00da\u00ce\u009e\u00bd\udb48\udf9a\u00d9\u00cc*": "\u00ed\ud82a\udc3e\u00fe"}, "ParentIndexNumber": -312, "Path": "", "OriginalTitle": "\u00a58\u009e!\u00e9\"", "IndexNumber": null, "Year": null, "IsAutomated": true}, "SearchProviderName": "The Open Movie Database"}' http://0.0.0.0:35675/Items/RemoteSearch/Series _______________________ POST /Items/RemoteSearch/Trailer _______________________ 1. Test Case ID: hasPam - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-41aee35e5497b11d6d04c9bd520e5010-200ceb625d3ebac1-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/RemoteSearch/Trailer 2. Test Case ID: iEOzqe - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"query":["The query field is required."],"$.IncludeDisabledProviders":["The JSON value could not be converted to System.Boolean. Path: $.IncludeDisabledProviders | LineNumber: 0 | BytePositionInLine: 30."]},"traceId":"00-7c1a8c81737e5aa5844a4f247305b1c2-a17eababc4f84c95-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": {}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Trailer 3. Test Case ID: Es2Wws - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": null, "SearchProviderName": false}' http://0.0.0.0:35675/Items/RemoteSearch/Trailer 4. Test Case ID: VzHjvv - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - searchInfo -> PremiereDate: Value not matching the 'date-time' format [200] OK: `[]` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IncludeDisabledProviders": false, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "SearchInfo": {"IndexNumber": 0, "IsAutomated": false, "MetadataCountryCode": null, "MetadataLanguage": null, "Name": null, "OriginalTitle": null, "ParentIndexNumber": 0, "Path": null, "PremiereDate": "", "ProviderIds": {}, "Year": 0}, "SearchProviderName": null}' http://0.0.0.0:35675/Items/RemoteSearch/Trailer 5. Test Case ID: FBMWf5 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.DateTime. Path: $ | LineNumber: 0 | BytePositionInLine: 32."],"query":["The query field is required."]},"traceId":"00-5595d4b69cd72dda7f0b59b123b27a9a-b617cfc3008adf5d-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ItemId": "dc854fb5-9beb-3277-89c5-54b549538592", "SearchInfo": {"ProviderIds": null, "Path": "/config/metadata/Year/2", "MetadataLanguage": "Z\ud92a\ude62F", "OriginalTitle": "9s\u009dw ", "Year": null, "IsAutomated": false, "MetadataCountryCode": "\u0014\udab9\udc15", "Name": "\udb50\ude57a\uda22\uddb3", "ParentIndexNumber": -2147483647, "PremiereDate": "2295-10-15T08:46:11.1448-17:11", "IndexNumber": null}, "SearchProviderName": "The Open Movie Database", "IncludeDisabledProviders": true}' http://0.0.0.0:35675/Items/RemoteSearch/Trailer _______________________________ POST /Items/Root _______________________________ 1. Test Case ID: o4ElCF - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-f74a4c900241f07aad464b65a86cd6d9-04e74606aacdbe98-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Root?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' ___________________________ POST /Items/Suggestions ____________________________ 1. Test Case ID: IjQrGR - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-c409d13fb7c6024474c78af4347f3820-6518ccace9908f46-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/Suggestions?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&mediaType=Unknown&type=AggregateFolder&startIndex=-2147483648&limit=-2147483648&enableTotalRecordCount=true' _____________________________ POST /Items/{itemId} _____________________________ 1. Test Case ID: 4vrtdX - Undocumented HTTP status code Received: 415 Documented: 204, 404, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-5d1d3367cac934678d14ae009afd1f86-0d95c840749429d3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd 2. Test Case ID: OkMOsF - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-d41e5894c24565599a95af21aa2f2b50-27f42d3060bc879a-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AirDays": [], "AirTime": null, "AirsAfterSeasonNumber": 0, "AirsBeforeEpisodeNumber": 0, "AirsBeforeSeasonNumber": 0, "Album": null, "AlbumArtist": null, "AlbumArtists": [], "AlbumCount": 0, "AlbumId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "AlbumNormalizationGain": null, "AlbumPrimaryImageTag": null, "Altitude": null, "Aperture": null, "ArtistCount": 0, "ArtistItems": [], "Artists": [], "AspectRatio": null, "Audio": "Thx", "BackdropImageTags": [], "CameraMake": null, "CameraModel": null, "CanDelete": null, "CanDownload": null, "ChannelId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ChannelName": null, "ChannelNumber": null, "ChannelPrimaryImageTag": null, "ChannelType": "TV", "Chapters": [], "ChildCount": 0, "CollectionType": "books", "CommunityRating": null, "CompletionPercentage": null, "Container": null, "CriticRating": null, "CumulativeRunTimeTicks": 0, "CurrentProgram": null, "CustomRating": null, "DateCreated": "2000-01-01T00:00:00Z", "DateLastMediaAdded": "2000-01-01T00:00:00Z", "DisplayOrder": null, "DisplayPreferencesId": null, "EnableMediaSourceDisplay": null, "EndDate": "2000-01-01T00:00:00Z", "EpisodeCount": 0, "EpisodeTitle": null, "Etag": null, "ExposureTime": null, "ExternalUrls": [], "ExtraType": "Clip", "FocalLength": null, "ForcedSortName": null, "GenreItems": [], "Genres": [], "HasLyrics": null, "HasSubtitles": null, "Height": 0, "Id": "eb1167b3-67a9-1378-bc65-c1e582e2e662", "ImageBlurHashes": {}, "ImageOrientation": "LeftTop", "ImageTags": {}, "IndexNumber": 0, "IndexNumberEnd": 0, "IsFolder": null, "IsHD": null, "IsKids": null, "IsLive": null, "IsMovie": null, "IsNews": null, "IsPlaceHolder": null, "IsPremiere": null, "IsRepeat": null, "IsSeries": null, "IsSports": null, "IsoSpeedRating": 0, "IsoType": "Dvd", "Latitude": null, "LocalTrailerCount": 0, "LocationType": "Remote", "LockData": null, "LockedFields": [], "Longitude": null, "MediaSourceCount": 0, "MediaSources": [], "MediaStreams": [], "MediaType": "Unknown", "MovieCount": 0, "MusicVideoCount": 0, "Name": null, "NormalizationGain": null, "Number": null, "OfficialRating": null, "OriginalLanguage": null, "OriginalTitle": null, "Overview": null, "ParentArtImageTag": null, "ParentArtItemId": "f7c1bd87-4da5-1709-9471-3d60c8a70639", "ParentBackdropImageTags": [], "ParentBackdropItemId": "e443df78-9558-167f-9ba9-1faf7a024204", "ParentId": "23a7711a-8133-1876-b7eb-dcd9e87a1613", "ParentIndexNumber": 0, "ParentLogoImageTag": null, "ParentLogoItemId": "1846d424-c17c-1279-a3c6-612f48268673", "ParentPrimaryImageItemId": "fcbd04c3-4021-1ef7-8ca5-a5a19e4d6e3c", "ParentPrimaryImageTag": null, "ParentThumbImageTag": null, "ParentThumbItemId": "b4862b21-fb97-1435-8856-1712e8e5216a", "PartCount": 0, "Path": null, "People": [], "PlayAccess": "Full", "PlaylistItemId": null, "PreferredMetadataCountryCode": null, "PreferredMetadataLanguage": null, "PremiereDate": "2000-01-01T00:00:00Z", "PrimaryImageAspectRatio": null, "ProductionLocations": [], "ProductionYear": 0, "ProgramCount": 0, "ProgramId": null, "ProviderIds": {}, "RecursiveItemCount": 0, "RemoteTrailers": [], "RunTimeTicks": 0, "ScreenshotImageTags": [], "SeasonId": "259f4329-e6f4-190b-9a16-4106cf6a659e", "SeasonName": null, "SeriesCount": 0, "SeriesId": "12e0c8b2-bad6-10fb-9948-8dec4f65d4d9", "SeriesName": null, "SeriesPrimaryImageTag": null, "SeriesStudio": null, "SeriesThumbImageTag": null, "SeriesTimerId": null, "ServerId": null, "ShutterSpeed": null, "Software": null, "SongCount": 0, "SortName": null, "SourceType": null, "SpecialFeatureCount": 0, "StartDate": "2000-01-01T00:00:00Z", "Status": null, "Studios": [], "Taglines": [], "Tags": [], "TimerId": null, "TrailerCount": 0, "Trickplay": {}, "Type": "Book", "UserData": null, "Video3DFormat": "MVC", "VideoType": "Dvd", "Width": 0}' http://0.0.0.0:35675/Items/null%2Cnull 3. Test Case ID: 8pXxQD - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"request":["The request field is required."],"$.Trickplay.\uDB96\uDD5B\u00FA.\u0007\u00C9\u00DBL":["The JSON value could not be converted to System.Int32. Path: $.Trickplay.\uDB96\uDD5B\u00FA.\u0007\u00C9\u00DBL | LineNumber: 0 | BytePositionInLine: 125."]},"traceId":"00-e27882185452e63192a81e2dea43f598-a41fa5b70649c2e7-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"MediaSources": null, "Width": -97, "ScreenshotImageTags": null, "Trickplay": {"\udb96\udd5b\u00fa": {"\u0007\u00c9\u00dbL": {"Height": 604, "TileHeight": 351, "Interval": 2147483647, "Width": -25858, "TileWidth": 727, "Bandwidth": 14127687, "ThumbnailCount": 7430}, "\udae8\udf9e0+\u00cc\t\u00e2\uda1f\udd627\u00f8\ud91b\udd5d\u0003[3\u00ba9K\ud8e3\udf8a\b\u0098\u00fbO\ud952\uddd7\u00f1\u00bc\udaf7\udf4d\u0094b\u00c9\u00a4\u00c6": {"Bandwidth": 242, "TileHeight": 144954315, "ThumbnailCount": -126509, "Width": -7276, "Height": 44069960, "Interval": 17267, "TileWidth": 60097}, "8\u00a6\u00e7\u00be\ud998\uddaa\u00b7\u009dY\udb5c\ude64\u009c\ud81d\udcc4\ud880\udf0b": {"TileWidth": 146, "Interval": 524287, "Height": 4974, "ThumbnailCount": -1, "Bandwidth": -45450, "Width": 33382182, "TileHeight": 75768}, ")\ue749\u0001\u0081\u007fE\u00ad\u00f3": {}}, "": {}, "\ud9c3\uddbdq\u00ee\u0092\u8c7a": {"INF": {"TileHeight": 940676, "ThumbnailCount": 582, "TileWidth": 276859, "Interval": -29, "Height": -200306, "Width": -510509, "Bandwidth": 7677}}, "\ud8fb\udf20\u0000\u00a1\u008f\u00b4\udaaf\udc7c\u0096K": null, "d\ud8d2\udf91\ud8b2\udd4e\u000b": null}, "DateCreated": "8709-04-28T08:11:57.25Z"}' http://0.0.0.0:35675/Items/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805 4. Test Case ID: 8znKHP - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - header: violates `required` (was Authorization) - body: violates `type` at /allOf/0/properties/PreferredMetadataLanguage/anyOf/1 (was null, became number) [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"ChannelNumber": "Q\udbe4\udd66\u00be\uda3c\udf7a,\ud84d\udc3a\u00d4[\ud86b\uddc9\u00bb\u00e1\u00ae'"'"'\udb6d\udd16\u0091\u00c5\u008c\u008e\u00c5Al\u00e9\u00f9\u0013\u0090\u00c8\u00cd\u00d0", "UserData": null, "EnableMediaSourceDisplay": false, "ExternalUrls": null, "PreferredMetadataLanguage": 4.306069681974642e+16, "Type": "Year"}' http://0.0.0.0:35675/Items/7e64e319-657a-9516-ec78-490da03edccb _______________________ POST /Items/{itemId}/ContentType _______________________ 1. Test Case ID: 9j0mi2 - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-b30847e5c848cff4c32af52954308502-b55df4a0c2bc7837-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/null%2Cnull/ContentType?contentType=' __________ POST /Items/{itemId}/Images/{imageType}/{imageIndex}/Index __________ 1. Test Case ID: jXmFje - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"newIndex":["The newIndex field is required."]},"traceId":"00-a54e1226c17c7b55e6ca9eb0743bdba8-7e1e4b2beb58bbb1-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Images/Primary/-2147483648/Index 2. Test Case ID: fn4w3c - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/cc7e13db-3fa0-bede-b991-44e11664c3a4/Images/Primary/108842/Index?newIndex=-16777215' ______________________ POST /Items/{itemId}/PlaybackInfo _______________________ 1. Test Case ID: zZtYbt - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-5b59b90d282a36c243f2d5569b0d21e6-e2a44f26a4f32b7c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AllowAudioStreamCopy": null, "AllowVideoStreamCopy": null, "AlwaysBurnInSubtitleWhenTranscoding": null, "AudioStreamIndex": 0, "AutoOpenLiveStream": null, "DeviceProfile": null, "EnableDirectPlay": null, "EnableDirectStream": null, "EnableTranscoding": null, "LiveStreamId": null, "MaxAudioChannels": 0, "MaxStreamingBitrate": 0, "MediaSourceId": null, "StartTimeTicks": 0, "SubtitleStreamIndex": 0, "UserId": "e3e70682-c209-1cac-a29f-6fbed82c07cd"}' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/PlaybackInfo?userId=null&userId=null' 2. Test Case ID: Je3qpg - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"UserId": "496a8fb2-696e-3049-abb5-b10f4977a057", "MediaSourceId": null, "MaxAudioChannels": null, "LiveStreamId": "\u0091", "AudioStreamIndex": null, "AutoOpenLiveStream": true, "EnableTranscoding": false, "StartTimeTicks": 933245, "EnableDirectPlay": null, "AlwaysBurnInSubtitleWhenTranscoding": null, "AllowVideoStreamCopy": null, "SubtitleStreamIndex": -122, "AllowAudioStreamCopy": false, "EnableDirectStream": null}' 'http://0.0.0.0:35675/Items/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805/PlaybackInfo?userId=ff53c59634c440fc88ea6fcb6bedc289&allowAudioStreamCopy=true&liveStreamId=KH%C2%AE%0F%C2%80r&allowVideoStreamCopy=false&audioStreamIndex=21&mediaSourceId=f6108439a07311ab057b17a8246e543a' 3. Test Case ID: R3ZtjK - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"EnableDirectPlay": null, "MaxStreamingBitrate": -12701, "LiveStreamId": null, "AllowVideoStreamCopy": false, "EnableDirectStream": null}' 'http://0.0.0.0:35675/Items/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805/PlaybackInfo?userId=ff53c59634c440fc88ea6fcb6bedc289&mediaSourceId=f6108439a07311ab057b17a8246e543a' _________________________ POST /Items/{itemId}/Refresh _________________________ 1. Test Case ID: 4peFJ5 - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"replaceAllMetadata":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-76cd1e791a55bba6c2e787446ac35287-7f0dd7111452c0e3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/Refresh?replaceAllMetadata=null&replaceAllMetadata=null' __________________ POST /Items/{itemId}/RemoteImages/Download __________________ 1. Test Case ID: Ct0CoY - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"type":["The value \u0027-58800\u0027 is invalid."]},"traceId":"00-2e6be7d140ed4b6fea14f9883fbfec55-068cb1f23335af94-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/e3e70682-c209-1cac-a29f-6fbed82c07cd/RemoteImages/Download?type=-58800' 2. Test Case ID: 3z5yE8 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/RemoteImages/Download?type=Art' 3. Test Case ID: 3asXoi - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items/af1f454f7d13cda29aa875ca68cbfb51/RemoteImages/Download?imageUrl=%C3%A6%28%F2%8E%9F%84%C3%9D%F1%B7%9E%A4%C3%8D%C2%AAB%F3%9E%AF%AF&type=Primary' ___________ POST /Items/{itemId}/RemoteSearch/Subtitles/{subtitleId} ___________ 1. Test Case ID: 8Em6Ub - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-a68e6c9fc457077fb2fc69a11a3e5f9f-a829e1f06d9f9d77-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Items/null%2Cnull/RemoteSearch/Subtitles/0 _________________________ POST /Library/Media/Updated __________________________ 1. Test Case ID: KdpP5E - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-0d97ca2a6fa04e6d3c9257cd5f60e84b-e3b860f715580934-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Library/Media/Updated 2. Test Case ID: uxwEQX - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"dto":["The dto field is required."],"$.Updates[0].UpdateType":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.Updates[0].UpdateType | LineNumber: 0 | BytePositionInLine: 43."]},"traceId":"00-9e9379d01292b15d3e13a0d5c056cd5b-8988c3021c88b761-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Updates": [{"Path": null, "UpdateType": {}}]}' http://0.0.0.0:35675/Library/Media/Updated 3. Test Case ID: sXyDW0 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - updates -> Array with invalid items: Path: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Updates": [{"Path": false, "UpdateType": null}]}' http://0.0.0.0:35675/Library/Media/Updated 4. Test Case ID: HGY5xE - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Updates": [null]}' http://0.0.0.0:35675/Library/Media/Updated 5. Test Case ID: uIYb6X - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Updates": [{"Path": null, "UpdateType": ""}]}' http://0.0.0.0:35675/Library/Media/Updated _________________________ POST /Library/VirtualFolders _________________________ 1. Test Case ID: AJkeD8 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."],"refreshLibrary":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-d55f3a47e388f150a5d994d93d036b14-046e71525a9030ec-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"LibraryOptions": null}' 'http://0.0.0.0:35675/Library/VirtualFolders?refreshLibrary=null&refreshLibrary=null' 2. Test Case ID: EbpKDo - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"name":["The name field is required."]},"traceId":"00-4e343793b135e6f309a3548298ecfcc8-7ed13b39e66aabed-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"LibraryOptions": null}' 'http://0.0.0.0:35675/Library/VirtualFolders?refreshLibrary=true' 3. Test Case ID: yYg9m8 - API accepts requests without authentication Expected 401 or 403, got `204 No Content` for `POST /Library/VirtualFolders` - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing `Authorization` at header - Missing header not rejected Got 204 when missing required 'Authorization' header, expected 401 [204] No Content: Reproduce with: curl -X POST -H 'Content-Type: application/json' -d '{"LibraryOptions": null}' 'http://0.0.0.0:35675/Library/VirtualFolders?name=0&collectionType=movies&paths=&refreshLibrary=true' 4. Test Case ID: rlpEKE - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"LibraryOptions": {"AllowEmbeddedSubtitles": "AllowAll", "AutomaticRefreshIntervalDays": 0, "AutomaticallyAddToCollection": false, "CustomTagDelimiters": [], "DelimiterWhitelist": [], "DisabledLocalMetadataReaders": [], "DisabledLyricFetchers": [], "DisabledMediaSegmentProviders": [], "DisabledSubtitleFetchers": [], "EnableAutomaticSeriesGrouping": false, "EnableChapterImageExtraction": false, "EnableEmbeddedEpisodeInfos": false, "EnableEmbeddedExtrasTitles": false, "EnableEmbeddedTitles": false, "EnableInternetProviders": false, "EnableLUFSScan": false, "EnablePhotos": false, "EnableRealtimeMonitor": false, "EnableTrickplayImageExtraction": false, "Enabled": false, "ExtractChapterImagesDuringLibraryScan": false, "ExtractTrickplayImagesDuringLibraryScan": false, "LocalMetadataReaderOrder": [], "LyricFetcherOrder": [], "MediaSegmentProviderOrder": [], "MetadataCountryCode": null, "MetadataSavers": [], "PathInfos": [], "PreferNonstandardArtistsTag": false, "PreferredMetadataLanguage": null, "RequirePerfectSubtitleMatch": false, "SaveLocalMetadata": false, "SaveLyricsWithMedia": false, "SaveSubtitlesWithMedia": false, "SaveTrickplayWithMedia": false, "SeasonZeroDisplayName": "", "SkipSubtitlesIfAudioTrackMatches": false, "SkipSubtitlesIfEmbeddedSubtitlesPresent": false, "SubtitleDownloadLanguages": [], "SubtitleFetcherOrder": [], "TypeOptions": [{"ImageFetcherOrder": [], "ImageFetchers": [], "ImageOptions": [{"Limit": 0, "MinWidth": 0, "Type": -58800}], "MetadataFetcherOrder": [], "MetadataFetchers": [], "SimilarItemProviderOrder": [], "SimilarItemProviders": [], "Type": null}], "UseCustomTagDelimiters": false}}' 'http://0.0.0.0:35675/Library/VirtualFolders?name=0&collectionType=movies&paths=&refreshLibrary=true' _________________ POST /Library/VirtualFolders/LibraryOptions __________________ 1. Test Case ID: WEt04m - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"request":["The request field is required."],"$.LibraryOptions.TypeOptions[0].SimilarItemProviderOrder[0]":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.LibraryOptions.TypeOptions[0].SimilarItemProviderOrder[0] | LineNumber: 0 | BytePositionInLine: 1561."]},"traceId":"00-37534ce68af9aeb3fb34285584a3eb4 // Output truncated...` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Id": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "LibraryOptions": {"AllowEmbeddedSubtitles": "AllowAll", "AutomaticRefreshIntervalDays": 0, "AutomaticallyAddToCollection": false, "CustomTagDelimiters": [], "DelimiterWhitelist": [], "DisabledLocalMetadataReaders": [], "DisabledLyricFetchers": [], "DisabledMediaSegmentProviders": [], "DisabledSubtitleFetchers": [], "EnableAutomaticSeriesGrouping": false, "EnableChapterImageExtraction": false, "EnableEmbeddedEpisodeInfos": false, "EnableEmbeddedExtrasTitles": false, "EnableEmbeddedTitles": false, "EnableInternetProviders": false, "EnableLUFSScan": false, "EnablePhotos": false, "EnableRealtimeMonitor": false, "EnableTrickplayImageExtraction": false, "Enabled": false, "ExtractChapterImagesDuringLibraryScan": false, "ExtractTrickplayImagesDuringLibraryScan": false, "LocalMetadataReaderOrder": [], "LyricFetcherOrder": [], "MediaSegmentProviderOrder": [], "MetadataCountryCode": null, "MetadataSavers": [], "PathInfos": [], "PreferNonstandardArtistsTag": false, "PreferredMetadataLanguage": null, "RequirePerfectSubtitleMatch": false, "SaveLocalMetadata": false, "SaveLyricsWithMedia": false, "SaveSubtitlesWithMedia": false, "SaveTrickplayWithMedia": false, "SeasonZeroDisplayName": "", "SkipSubtitlesIfAudioTrackMatches": false, "SkipSubtitlesIfEmbeddedSubtitlesPresent": false, "SubtitleDownloadLanguages": [], "SubtitleFetcherOrder": [], "TypeOptions": [{"ImageFetcherOrder": [], "ImageFetchers": [], "ImageOptions": [], "MetadataFetcherOrder": [], "MetadataFetchers": [], "SimilarItemProviderOrder": [{}], "SimilarItemProviders": [], "Type": null}], "UseCustomTagDelimiters": false}}' http://0.0.0.0:35675/Library/VirtualFolders/LibraryOptions 2. Test Case ID: q6HauE - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{}' http://0.0.0.0:35675/Library/VirtualFolders/LibraryOptions 3. Test Case ID: 4YEoxr - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 204, 404, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-6094f06906e554c85d0e3e073cd3c43f-0f400c42ece1d5d6-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Library/VirtualFolders/LibraryOptions ______________________ POST /Library/VirtualFolders/Name _______________________ 1. Test Case ID: XHfqzh - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented Content-Type Received: text/plain Documented: application/json, application/json; profile="CamelCase", application/json; profile="PascalCase" [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/VirtualFolders/Name?name=&newName=' 2. Test Case ID: tN7S6j - Response violates schema "The media collection does not exist." is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "The media collection does not exist." [404] Not Found: `"The media collection does not exist."` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/VirtualFolders/Name?refreshLibrary=true&name=%C3%A0%F0%A7%81%BBR%C3%84%04%C2%97%0A3%C3%B28N%C2%94%2F%7C-%F2%9F%B6%86%F2%85%AE%91&newName=%C3%BA%C2%81%C3%AD%C3%82N%C2%85%F2%BF%AF%B1%E6%8C%85i%C3%B9%21%C3%8D' 3. Test Case ID: yPEL4C - Unexpected response to a request without authentication Expected 401 or 403, got `404 Not Found` for `POST /Library/VirtualFolders/Name` [404] Not Found: `"The media collection does not exist."` Reproduce with: curl -X POST 'http://0.0.0.0:35675/Library/VirtualFolders/Name?newName=%C3%A8%F1%AB%BA%A1%C3%98&refreshLibrary=false&name=Music' 4. Test Case ID: USWngb - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `Authorization` in header - violates `required` (was Authorization) [204] No Content: Reproduce with: curl -X POST 'http://0.0.0.0:35675/Library/VirtualFolders/Name?name=05&refreshLibrary=true&newName=%F1%9B%A9%97%09' ______________________ POST /Library/VirtualFolders/Paths ______________________ 1. Test Case ID: RVnruK - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-36fb407057372047beb823d3f1a1b705-ffaded11dfada417-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?refreshLibrary=true' 2. Test Case ID: vb7uJB - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"refreshLibrary":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-a85162718f851a211cd02ccc556d5c10-87c62ce7230f97f1-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "Path": null, "PathInfo": null}' 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?refreshLibrary=null&refreshLibrary=null' 3. Test Case ID: 4NPjos - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "Path": null, "PathInfo": null}' 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?refreshLibrary=false' 4. Test Case ID: i7E5Q5 - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "Path": null, "PathInfo": {"Path": false}}' 'http://0.0.0.0:35675/Library/VirtualFolders/Paths?refreshLibrary=true' 5. Test Case ID: uxwZhY - API accepts requests without authentication Expected 401 or 403, got `204 No Content` for `POST /Library/VirtualFolders/Paths` [204] No Content: Reproduce with: curl -X POST -H 'Content-Type: application/json' -d '{"Path": "/config/data/playlists/HD Homerun1111111111111111111111", "PathInfo": null, "Name": "05"}' http://0.0.0.0:35675/Library/VirtualFolders/Paths __________________ POST /Library/VirtualFolders/Paths/Update ___________________ 1. Test Case ID: BBRiFg - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-99de6c415c019b4980c02c7b5f3a982b-42419afdccc29600-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Library/VirtualFolders/Paths/Update 2. Test Case ID: RkZtF9 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"mediaPathRequestDto":["The mediaPathRequestDto field is required."],"$.PathInfo.Path":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.PathInfo.Path | LineNumber: 0 | BytePositionInLine: 36."]},"traceId":"00-578185978cca540b5232752e664b9545-5c14fef64f7a4c53-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "PathInfo": {"Path": {}}}' http://0.0.0.0:35675/Library/VirtualFolders/Paths/Update 3. Test Case ID: dX8EAm - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - pathInfo -> Path: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "PathInfo": {"Path": false}}' http://0.0.0.0:35675/Library/VirtualFolders/Paths/Update 4. Test Case ID: 0pBko7 - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": false, "PathInfo": {}}' http://0.0.0.0:35675/Library/VirtualFolders/Paths/Update 5. Test Case ID: 7aqZH1 - API accepts requests without authentication Expected 401 or 403, got `204 No Content` for `POST /Library/VirtualFolders/Paths/Update` [204] No Content: Reproduce with: curl -X POST -H 'Content-Type: application/json' -d '{"Name": "User 00 has been created", "PathInfo": {}}' http://0.0.0.0:35675/Library/VirtualFolders/Paths/Update ___________________________ POST /LiveStreams/Close ____________________________ 1. Test Case ID: 9qymhF - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"liveStreamId":["The liveStreamId field is required."]},"traceId":"00-00b6b6a0b7e63d60ae412582110c6b28-5efe33ccd47f5adc-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveStreams/Close 2. Test Case ID: 2t2z1p - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"liveStreamId":["The liveStreamId field is required."]},"traceId":"00-862ed98256eaaae00462382d77dbd2af-8e2d684a7d4a32a7-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveStreams/Close?liveStreamId=' ____________________________ POST /LiveStreams/Open ____________________________ 1. Test Case ID: XAcqBt - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AlwaysBurnInSubtitleWhenTranscoding": null, "AudioStreamIndex": 0, "DeviceProfile": null, "DirectPlayProtocols": [], "EnableDirectPlay": null, "EnableDirectStream": null, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "MaxAudioChannels": 0, "MaxStreamingBitrate": 0, "OpenToken": "[Filtered]", "PlaySessionId": "[Filtered]", "StartTimeTicks": 0, "SubtitleStreamIndex": 0, "UserId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455"}' 'http://0.0.0.0:35675/LiveStreams/Open?openToken=%5BFiltered%5D&playSessionId=%5BFiltered%5D&maxStreamingBitrate=-2147483648&startTimeTicks=-9223372036854775808&audioStreamIndex=-2147483648&subtitleStreamIndex=-2147483648&maxAudioChannels=-2147483648&itemId=e3e70682-c209-1cac-a29f-6fbed82c07cd&enableDirectPlay=true&enableDirectStream=true&alwaysBurnInSubtitleWhenTranscoding=true' 2. Test Case ID: yS2iop - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AlwaysBurnInSubtitleWhenTranscoding": null, "AudioStreamIndex": 0, "DeviceProfile": null, "DirectPlayProtocols": [], "EnableDirectPlay": null, "EnableDirectStream": null, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "MaxAudioChannels": 0, "MaxStreamingBitrate": 0, "OpenToken": "[Filtered]", "PlaySessionId": "[Filtered]", "StartTimeTicks": 0, "SubtitleStreamIndex": 0, "UserId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455"}' 'http://0.0.0.0:35675/LiveStreams/Open?openToken=%5BFiltered%5D&userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&playSessionId=%5BFiltered%5D&maxStreamingBitrate=-2147483648&startTimeTicks=-9223372036854775808&audioStreamIndex=-2147483648&subtitleStreamIndex=-2147483648&maxAudioChannels=-2147483648&itemId=e3e70682-c209-1cac-a29f-6fbed82c07cd&enableDirectPlay=true&enableDirectStream=true&alwaysBurnInSubtitleWhenTranscoding=true' _________________________ POST /LiveTv/ChannelMappings _________________________ 1. Test Case ID: yyKAoh - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-e980512c49cf54f36cc6da5e0560d44a-c577192b0183dceb-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/ChannelMappings 2. Test Case ID: tuPErw - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"dto":["The dto field is required."],"$.ProviderChannelId":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.ProviderChannelId | LineNumber: 0 | BytePositionInLine: 23."]},"traceId":"00-896199017210c3f190d755cb66508361-e951669301792ddf-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ProviderChannelId": {}, "ProviderId": "0", "TunerChannelId": "0"}' http://0.0.0.0:35675/LiveTv/ChannelMappings 3. Test Case ID: IPTThj - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ProviderChannelId": false, "ProviderId": "0", "TunerChannelId": "0"}' http://0.0.0.0:35675/LiveTv/ChannelMappings 4. Test Case ID: yolfZb - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"ProviderId":["The ProviderId field is required."]},"traceId":"00-8f3fbd30dedec6c3614b1bfe30278006-015847f94454d38c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"ProviderId": "\r", "ProviderChannelId": ",\u00a4\udbfe\udd2cz\u00b2\b", "TunerChannelId": "\udace\udd26\u0081S\u0007\u00e6\udb7c\udfb7R\udabe\uddd7\ud82b\udfe2\udbe4\uddb7\u50aas\u0005"}' http://0.0.0.0:35675/LiveTv/ChannelMappings ________________________ POST /LiveTv/ListingProviders _________________________ 1. Test Case ID: TCPxCf - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelMappings": [], "Country": null, "EnableAllTuners": false, "EnabledTuners": [], "Id": null, "KidsCategories": [], "ListingsId": null, "MovieCategories": [], "MoviePrefix": null, "NewsCategories": [], "Password": "[Filtered]", "Path": null, "PreferredLanguage": null, "SportsCategories": [], "Type": null, "UserAgent": null, "Username": null, "ZipCode": null}' 'http://0.0.0.0:35675/LiveTv/ListingProviders?pw=&validateListings=true' 2. Test Case ID: LIyx9l - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"validateLogin":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-190566f598c160172d7ae202b0da098f-f795efc4217f1891-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelMappings": [], "Country": null, "EnableAllTuners": false, "EnabledTuners": [], "Id": null, "KidsCategories": [], "ListingsId": null, "MovieCategories": [], "MoviePrefix": null, "NewsCategories": [], "Password": "[Filtered]", "Path": null, "PreferredLanguage": null, "SportsCategories": [], "Type": null, "UserAgent": null, "Username": null, "ZipCode": null}' 'http://0.0.0.0:35675/LiveTv/ListingProviders?validateLogin=null&validateLogin=null' 3. Test Case ID: HPYBhs - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-04113fa8371801415cad555b0095e749-76aab699c06f7262-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/LiveTv/ListingProviders?validateLogin=&validateListings=true' 4. Test Case ID: gHCK9u - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-94abdef8fd590740259dca33e2d46162-29a4338ed78541a6-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/ListingProviders ____________________________ POST /LiveTv/Programs _____________________________ 1. Test Case ID: 086bdi - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"body":["The body field is required."],"$[0]":["The JSON value could not be converted to MediaBrowser.Model.Querying.ItemFields. Path: $[0] | LineNumber: 0 | BytePositionInLine: 5."]},"traceId":"00-5e408a9fe374702795715c7868e8252c-e421dbabddd55c1e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelIds": [], "EnableImageTypes": [], "EnableImages": null, "EnableTotalRecordCount": true, "EnableUserData": null, "Fields": [null, null], "GenreIds": [], "Genres": [], "HasAired": null, "ImageTypeLimit": 0, "IsAiring": null, "IsKids": null, "IsMovie": null, "IsNews": null, "IsSeries": null, "IsSports": null, "LibrarySeriesId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "Limit": 0, "MaxEndDate": "2000-01-01T00:00:00Z", "MaxStartDate": "2000-01-01T00:00:00Z", "MinEndDate": "2000-01-01T00:00:00Z", "MinStartDate": "2000-01-01T00:00:00Z", "SeriesTimerId": null, "SortBy": [], "SortOrder": [], "StartIndex": 0, "UserId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455"}' http://0.0.0.0:35675/LiveTv/Programs 2. Test Case ID: fAUjxz - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - fields -> Array with invalid items: Incorrect type [200] OK: `{"Items":[],"TotalRecordCount":0,"StartIndex":0}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelIds": [], "EnableImageTypes": [], "EnableImages": null, "EnableTotalRecordCount": true, "EnableUserData": null, "Fields": [0], "GenreIds": [], "Genres": [], "HasAired": null, "ImageTypeLimit": 0, "IsAiring": null, "IsKids": null, "IsMovie": null, "IsNews": null, "IsSeries": null, "IsSports": null, "LibrarySeriesId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "Limit": 0, "MaxEndDate": "2000-01-01T00:00:00Z", "MaxStartDate": "2000-01-01T00:00:00Z", "MinEndDate": "2000-01-01T00:00:00Z", "MinStartDate": "2000-01-01T00:00:00Z", "SeriesTimerId": null, "SortBy": [], "SortOrder": [], "StartIndex": 0, "UserId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455"}' http://0.0.0.0:35675/LiveTv/Programs 3. Test Case ID: kzKs8A - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelIds": [], "EnableImageTypes": [], "EnableImages": null, "EnableTotalRecordCount": true, "EnableUserData": null, "Fields": [], "GenreIds": [], "Genres": [], "HasAired": null, "ImageTypeLimit": 0, "IsAiring": null, "IsKids": null, "IsMovie": null, "IsNews": null, "IsSeries": null, "IsSports": null, "LibrarySeriesId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "Limit": 0, "MaxEndDate": "2000-01-01T00:00:00Z", "MaxStartDate": "2000-01-01T00:00:00Z", "MinEndDate": "2000-01-01T00:00:00Z", "MinStartDate": "2000-01-01T00:00:00Z", "SeriesTimerId": null, "SortBy": ["IsFavoriteOrLiked"], "SortOrder": [], "StartIndex": 0, "UserId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455"}' http://0.0.0.0:35675/LiveTv/Programs 4. Test Case ID: B5gCcc - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-7126131b3f5051b8bec776a0ac2e803d-a8a47c67d659f2f3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/Programs __________________________ POST /LiveTv/SeriesTimers ___________________________ 1. Test Case ID: AdGa4o - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"seriesTimerInfo":["The seriesTimerInfo field is required."],"$.ParentPrimaryImageTag":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.ParentPrimaryImageTag | LineNumber: 0 | BytePositionInLine: 571."]},"traceId":"00-40f5af216a8c144275e981843cfebe44-0d468811dc02b353-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "DayPattern": "Daily", "Days": [], "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "Id": null, "ImageTags": {}, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "KeepUpTo": 0, "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "ParentPrimaryImageItemId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ParentPrimaryImageTag": {}, "ParentThumbImageTag": null, "ParentThumbItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "RecordAnyChannel": false, "RecordAnyTime": false, "RecordNewOnly": false, "ServerId": null, "ServiceName": null, "SkipEpisodesInLibrary": false, "StartDate": "2000-01-01T00:00:00Z", "Type": null}' http://0.0.0.0:35675/LiveTv/SeriesTimers 2. Test Case ID: dcRFG7 - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "DayPattern": "Daily", "Days": [], "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "Id": null, "ImageTags": {}, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "KeepUpTo": 0, "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "ParentPrimaryImageItemId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ParentPrimaryImageTag": false, "ParentThumbImageTag": null, "ParentThumbItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "RecordAnyChannel": false, "RecordAnyTime": false, "RecordNewOnly": false, "ServerId": null, "ServiceName": null, "SkipEpisodesInLibrary": false, "StartDate": "2000-01-01T00:00:00Z", "Type": null}' http://0.0.0.0:35675/LiveTv/SeriesTimers 3. Test Case ID: 3Hi6u4 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"seriesTimerInfo":["The seriesTimerInfo field is required."],"$.ImageTags.x-schemathesis-additional":["The JSON value could not be converted to MediaBrowser.Model.Entities.ImageType. Path: $.ImageTags.x-schemathesis-additional | LineNumber: 0 | BytePositionInLine: 305."]},"traceId":"00-8998db74d32bed9be240e3f34eea3fea-58261d1fd511b77e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "DayPattern": "Daily", "Days": [], "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "Id": null, "ImageTags": {"x-schemathesis-additional": null}, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "KeepUpTo": 0, "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "ParentPrimaryImageItemId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ParentPrimaryImageTag": null, "ParentThumbImageTag": null, "ParentThumbItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "RecordAnyChannel": false, "RecordAnyTime": false, "RecordNewOnly": false, "ServerId": null, "ServiceName": null, "SkipEpisodesInLibrary": false, "StartDate": "2000-01-01T00:00:00Z", "Type": null}' http://0.0.0.0:35675/LiveTv/SeriesTimers _____________________ POST /LiveTv/SeriesTimers/{timerId} ______________________ 1. Test Case ID: qbbdZd - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"seriesTimerInfo":["The seriesTimerInfo field is required."],"$.ParentPrimaryImageTag":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.ParentPrimaryImageTag | LineNumber: 0 | BytePositionInLine: 571."]},"traceId":"00-06a2e0345c47c4a76c1635c7487dff2e-ab353d8d5ddeac3c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "DayPattern": "Daily", "Days": [], "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "Id": null, "ImageTags": {}, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "KeepUpTo": 0, "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "ParentPrimaryImageItemId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ParentPrimaryImageTag": {}, "ParentThumbImageTag": null, "ParentThumbItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "RecordAnyChannel": false, "RecordAnyTime": false, "RecordNewOnly": false, "ServerId": null, "ServiceName": null, "SkipEpisodesInLibrary": false, "StartDate": "2000-01-01T00:00:00Z", "Type": null}' http://0.0.0.0:35675/LiveTv/SeriesTimers/0 2. Test Case ID: yYG2BY - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "DayPattern": "Daily", "Days": [], "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "Id": null, "ImageTags": {}, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "KeepUpTo": 0, "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "ParentPrimaryImageItemId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ParentPrimaryImageTag": false, "ParentThumbImageTag": null, "ParentThumbItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "RecordAnyChannel": false, "RecordAnyTime": false, "RecordNewOnly": false, "ServerId": null, "ServiceName": null, "SkipEpisodesInLibrary": false, "StartDate": "2000-01-01T00:00:00Z", "Type": null}' http://0.0.0.0:35675/LiveTv/SeriesTimers/0 3. Test Case ID: WRXgak - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"seriesTimerInfo":["The seriesTimerInfo field is required."],"$.ImageTags.x-schemathesis-additional":["The JSON value could not be converted to MediaBrowser.Model.Entities.ImageType. Path: $.ImageTags.x-schemathesis-additional | LineNumber: 0 | BytePositionInLine: 305."]},"traceId":"00-b965d712051f68246dadbb7d5d06686f-76f0d4b7e140d0de-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "DayPattern": "Daily", "Days": [], "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "Id": null, "ImageTags": {"x-schemathesis-additional": null}, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "KeepUpTo": 0, "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "ParentPrimaryImageItemId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ParentPrimaryImageTag": null, "ParentThumbImageTag": null, "ParentThumbItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "RecordAnyChannel": false, "RecordAnyTime": false, "RecordNewOnly": false, "ServerId": null, "ServiceName": null, "SkipEpisodesInLibrary": false, "StartDate": "2000-01-01T00:00:00Z", "Type": null}' http://0.0.0.0:35675/LiveTv/SeriesTimers/0 _____________________________ POST /LiveTv/Timers ______________________________ 1. Test Case ID: OYXaID - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "ExternalSeriesTimerId": null, "Id": null, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "ProgramInfo": {"AirDays": [], "AirTime": null, "AirsAfterSeasonNumber": 0, "AirsBeforeEpisodeNumber": 0, "AirsBeforeSeasonNumber": 0, "Album": null, "AlbumArtist": null, "AlbumArtists": [], "AlbumCount": 0, "AlbumId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "AlbumNormalizationGain": null, "AlbumPrimaryImageTag": null, "Altitude": null, "Aperture": null, "ArtistCount": 0, "ArtistItems": [], "Artists": [], "AspectRatio": null, "Audio": "Thx", "BackdropImageTags": [], "CameraMake": null, "CameraModel": null, "CanDelete": null, "CanDownload": null, "ChannelId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ChannelName": null, "ChannelNumber": null, "ChannelPrimaryImageTag": null, "ChannelType": "TV", "Chapters": [], "ChildCount": 0, "CollectionType": "books", "CommunityRating": null, "CompletionPercentage": null, "Container": null, "CriticRating": null, "CumulativeRunTimeTicks": 0, "CurrentProgram": null, "CustomRating": null, "DateCreated": "2000-01-01T00:00:00Z", "DateLastMediaAdded": "2000-01-01T00:00:00Z", "DisplayOrder": null, "DisplayPreferencesId": null, "EnableMediaSourceDisplay": null, "EndDate": "2000-01-01T00:00:00Z", "EpisodeCount": 0, "EpisodeTitle": null, "Etag": null, "ExposureTime": null, "ExternalUrls": [], "ExtraType": "Clip", "FocalLength": null, "ForcedSortName": null, "GenreItems": [], "Genres": [], "HasLyrics": null, "HasSubtitles": null, "Height": 0, "Id": "eb1167b3-67a9-1378-bc65-c1e582e2e662", "ImageBlurHashes": {"Art": {}, "Backdrop": {}, "Banner": {}, "Box": {}, "BoxRear": {}, "Chapter": {}, "Disc": {}, "Logo": {"x-schemathesis-additional": ""}, "Menu": {}, "Primary": {}, "Profile": {}, "Screenshot": {}, "Thumb": {}}, "ImageOrientation": "LeftTop", "ImageTags": {}, "IndexNumber": 0, "IndexNumberEnd": 0, "IsFolder": null, "IsHD": null, "IsKids": null, "IsLive": null, "IsMovie": null, "IsNews": null, "IsPlaceHolder": null, "IsPremiere": null, "IsRepeat": null, "IsSeries": null, "IsSports": null, "IsoSpeedRating": 0, "IsoType": "Dvd", "Latitude": null, "LocalTrailerCount": 0, "LocationType": "Remote", "LockData": null, "LockedFields": [], "Longitude": null, "MediaSourceCount": 0, "MediaSources": [], "MediaStreams": [], "MediaType": "Unknown", "MovieCount": 0, "MusicVideoCount": 0, "Name": null, "NormalizationGain": null, "Number": null, "OfficialRating": null, "OriginalLanguage": null, "OriginalTitle": null, "Overview": null, "ParentArtImageTag": null, "ParentArtItemId": "f7c1bd87-4da5-1709-9471-3d60c8a70639", "ParentBackdropImageTags": [], "ParentBackdropItemId": "e443df78-9558-167f-9ba9-1faf7a024204", "ParentId": "23a7711a-8133-1876-b7eb-dcd9e87a1613", "ParentIndexNumber": 0, "ParentLogoImageTag": null, "ParentLogoItemId": "1846d424-c17c-1279-a3c6-612f48268673", "ParentPrimaryImageItemId": "fcbd04c3-4021-1ef7-8ca5-a5a19e4d6e3c", "ParentPrimaryImageTag": null, "ParentThumbImageTag": null, "ParentThumbItemId": "b4862b21-fb97-1435-8856-1712e8e5216a", "PartCount": 0, "Path": null, "People": [], "PlayAccess": "Full", "PlaylistItemId": null, "PreferredMetadataCountryCode": null, "PreferredMetadataLanguage": null, "PremiereDate": "2000-01-01T00:00:00Z", "PrimaryImageAspectRatio": null, "ProductionLocations": [], "ProductionYear": 0, "ProgramCount": 0, "ProgramId": null, "ProviderIds": {}, "RecursiveItemCount": 0, "RemoteTrailers": [], "RunTimeTicks": 0, "ScreenshotImageTags": [], "SeasonId": "259f4329-e6f4-190b-9a16-4106cf6a659e", "SeasonName": null, "SeriesCount": 0, "SeriesId": "12e0c8b2-bad6-10fb-9948-8dec4f65d4d9", "SeriesName": null, "SeriesPrimaryImageTag": null, "SeriesStudio": null, "SeriesThumbImageTag": null, "SeriesTimerId": null, "ServerId": null, "ShutterSpeed": null, "Software": null, "SongCount": 0, "SortName": null, "SourceType": null, "SpecialFeatureCount": 0, "StartDate": "2000-01-01T00:00:00Z", "Status": null, "Studios": [], "Taglines": [], "Tags": [], "TimerId": null, "TrailerCount": 0, "Trickplay": {}, "Type": "Book", "UserData": null, "Video3DFormat": "MVC", "VideoType": "Dvd", "Width": 0}, "RunTimeTicks": 0, "SeriesTimerId": null, "ServerId": null, "ServiceName": null, "StartDate": "2000-01-01T00:00:00Z", "Status": "New", "Type": null}' http://0.0.0.0:35675/LiveTv/Timers 2. Test Case ID: ab6TDM - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["\u00270xCF\u0027 is an invalid start of a value. Path: $ | LineNumber: 0 | BytePositionInLine: 0."],"timerInfo":["The timerInfo field is required."]},"traceId":"00-49d31a688e35d039f552014f443529a8-40614634be029bce-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d $'�\x14i�8�5%\x19����;�,W�1\x01}zN{�����' http://0.0.0.0:35675/LiveTv/Timers 3. Test Case ID: YSx5wy - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"ChannelPrimaryImageTag": "y\ud8ba\udf48wa", "ExternalProgramId": null, "Status": "ConflictedNotOk", "ProgramInfo": null, "ServiceName": "Emby", "Name": "\u00d4\udb4b\udc68\ud9a9\udde8\u00cd0\u00bc\b\u00e5\udba7\udfca\u00ff\u00bb\u008d\u00c4\u00e0>\n\u00fe\uf039\u00cf", "IsPostPaddingRequired": false}' http://0.0.0.0:35675/LiveTv/Timers 4. Test Case ID: 8P4gy1 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-6a3cfb7e4535ec969c2d3d9676fc8ccb-4b77e79591fd4428-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/Timers ________________________ POST /LiveTv/Timers/{timerId} _________________________ 1. Test Case ID: VJCQ3r - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"timerInfo":["The timerInfo field is required."],"$.ProgramInfo.OriginalLanguage":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.ProgramInfo.OriginalLanguage | LineNumber: 0 | BytePositionInLine: 2654."]},"traceId":"00-0df5328445d3893d0a650ae86cbd9d15-ceeb30bc3d412354-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "ExternalSeriesTimerId": null, "Id": null, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "ProgramInfo": {"AirDays": [], "AirTime": null, "AirsAfterSeasonNumber": 0, "AirsBeforeEpisodeNumber": 0, "AirsBeforeSeasonNumber": 0, "Album": null, "AlbumArtist": null, "AlbumArtists": [], "AlbumCount": 0, "AlbumId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "AlbumNormalizationGain": null, "AlbumPrimaryImageTag": null, "Altitude": null, "Aperture": null, "ArtistCount": 0, "ArtistItems": [], "Artists": [], "AspectRatio": null, "Audio": "Thx", "BackdropImageTags": [], "CameraMake": null, "CameraModel": null, "CanDelete": null, "CanDownload": null, "ChannelId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ChannelName": null, "ChannelNumber": null, "ChannelPrimaryImageTag": null, "ChannelType": "TV", "Chapters": [], "ChildCount": 0, "CollectionType": "books", "CommunityRating": null, "CompletionPercentage": null, "Container": null, "CriticRating": null, "CumulativeRunTimeTicks": 0, "CurrentProgram": null, "CustomRating": null, "DateCreated": "2000-01-01T00:00:00Z", "DateLastMediaAdded": "2000-01-01T00:00:00Z", "DisplayOrder": null, "DisplayPreferencesId": null, "EnableMediaSourceDisplay": null, "EndDate": "2000-01-01T00:00:00Z", "EpisodeCount": 0, "EpisodeTitle": null, "Etag": null, "ExposureTime": null, "ExternalUrls": [], "ExtraType": "Clip", "FocalLength": null, "ForcedSortName": null, "GenreItems": [], "Genres": [], "HasLyrics": null, "HasSubtitles": null, "Height": 0, "Id": "eb1167b3-67a9-1378-bc65-c1e582e2e662", "ImageBlurHashes": {}, "ImageOrientation": "LeftTop", "ImageTags": {}, "IndexNumber": 0, "IndexNumberEnd": 0, "IsFolder": null, "IsHD": null, "IsKids": null, "IsLive": null, "IsMovie": null, "IsNews": null, "IsPlaceHolder": null, "IsPremiere": null, "IsRepeat": null, "IsSeries": null, "IsSports": null, "IsoSpeedRating": 0, "IsoType": "Dvd", "Latitude": null, "LocalTrailerCount": 0, "LocationType": "Remote", "LockData": null, "LockedFields": [], "Longitude": null, "MediaSourceCount": 0, "MediaSources": [], "MediaStreams": [], "MediaType": "Unknown", "MovieCount": 0, "MusicVideoCount": 0, "Name": null, "NormalizationGain": null, "Number": null, "OfficialRating": null, "OriginalLanguage": {}, "OriginalTitle": null, "Overview": null, "ParentArtImageTag": null, "ParentArtItemId": "f7c1bd87-4da5-1709-9471-3d60c8a70639", "ParentBackdropImageTags": [], "ParentBackdropItemId": "e443df78-9558-167f-9ba9-1faf7a024204", "ParentId": "23a7711a-8133-1876-b7eb-dcd9e87a1613", "ParentIndexNumber": 0, "ParentLogoImageTag": null, "ParentLogoItemId": "1846d424-c17c-1279-a3c6-612f48268673", "ParentPrimaryImageItemId": "fcbd04c3-4021-1ef7-8ca5-a5a19e4d6e3c", "ParentPrimaryImageTag": null, "ParentThumbImageTag": null, "ParentThumbItemId": "b4862b21-fb97-1435-8856-1712e8e5216a", "PartCount": 0, "Path": null, "People": [], "PlayAccess": "Full", "PlaylistItemId": null, "PreferredMetadataCountryCode": null, "PreferredMetadataLanguage": null, "PremiereDate": "2000-01-01T00:00:00Z", "PrimaryImageAspectRatio": null, "ProductionLocations": [], "ProductionYear": 0, "ProgramCount": 0, "ProgramId": null, "ProviderIds": {}, "RecursiveItemCount": 0, "RemoteTrailers": [], "RunTimeTicks": 0, "ScreenshotImageTags": [], "SeasonId": "259f4329-e6f4-190b-9a16-4106cf6a659e", "SeasonName": null, "SeriesCount": 0, "SeriesId": "12e0c8b2-bad6-10fb-9948-8dec4f65d4d9", "SeriesName": null, "SeriesPrimaryImageTag": null, "SeriesStudio": null, "SeriesThumbImageTag": null, "SeriesTimerId": null, "ServerId": null, "ShutterSpeed": null, "Software": null, "SongCount": 0, "SortName": null, "SourceType": null, "SpecialFeatureCount": 0, "StartDate": "2000-01-01T00:00:00Z", "Status": null, "Studios": [], "Taglines": [], "Tags": [], "TimerId": null, "TrailerCount": 0, "Trickplay": {}, "Type": "Book", "UserData": null, "Video3DFormat": "MVC", "VideoType": "Dvd", "Width": 0}, "RunTimeTicks": 0, "SeriesTimerId": null, "ServerId": null, "ServiceName": null, "StartDate": "2000-01-01T00:00:00Z", "Status": "New", "Type": null}' http://0.0.0.0:35675/LiveTv/Timers/0 2. Test Case ID: bd1eRN - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ChannelId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "ChannelName": null, "ChannelPrimaryImageTag": null, "EndDate": "2000-01-01T00:00:00Z", "ExternalChannelId": null, "ExternalId": null, "ExternalProgramId": null, "ExternalSeriesTimerId": null, "Id": null, "IsPostPaddingRequired": false, "IsPrePaddingRequired": false, "KeepUntil": "UntilDate", "Name": null, "Overview": null, "ParentBackdropImageTags": [], "ParentBackdropItemId": null, "PostPaddingSeconds": 0, "PrePaddingSeconds": 0, "Priority": 0, "ProgramId": null, "ProgramInfo": {"AirDays": [], "AirTime": null, "AirsAfterSeasonNumber": 0, "AirsBeforeEpisodeNumber": 0, "AirsBeforeSeasonNumber": 0, "Album": null, "AlbumArtist": null, "AlbumArtists": [], "AlbumCount": 0, "AlbumId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "AlbumNormalizationGain": null, "AlbumPrimaryImageTag": null, "Altitude": null, "Aperture": null, "ArtistCount": 0, "ArtistItems": [], "Artists": [], "AspectRatio": null, "Audio": "Thx", "BackdropImageTags": [], "CameraMake": null, "CameraModel": null, "CanDelete": null, "CanDownload": null, "ChannelId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ChannelName": null, "ChannelNumber": null, "ChannelPrimaryImageTag": null, "ChannelType": "TV", "Chapters": [], "ChildCount": 0, "CollectionType": "books", "CommunityRating": null, "CompletionPercentage": null, "Container": null, "CriticRating": null, "CumulativeRunTimeTicks": 0, "CurrentProgram": null, "CustomRating": null, "DateCreated": "2000-01-01T00:00:00Z", "DateLastMediaAdded": "2000-01-01T00:00:00Z", "DisplayOrder": null, "DisplayPreferencesId": null, "EnableMediaSourceDisplay": null, "EndDate": "2000-01-01T00:00:00Z", "EpisodeCount": 0, "EpisodeTitle": null, "Etag": null, "ExposureTime": null, "ExternalUrls": [], "ExtraType": "Clip", "FocalLength": null, "ForcedSortName": null, "GenreItems": [], "Genres": [], "HasLyrics": null, "HasSubtitles": null, "Height": 0, "Id": "eb1167b3-67a9-1378-bc65-c1e582e2e662", "ImageBlurHashes": {}, "ImageOrientation": "LeftTop", "ImageTags": {}, "IndexNumber": 0, "IndexNumberEnd": 0, "IsFolder": null, "IsHD": null, "IsKids": null, "IsLive": null, "IsMovie": null, "IsNews": null, "IsPlaceHolder": null, "IsPremiere": null, "IsRepeat": null, "IsSeries": null, "IsSports": null, "IsoSpeedRating": 0, "IsoType": "Dvd", "Latitude": null, "LocalTrailerCount": 0, "LocationType": "Remote", "LockData": null, "LockedFields": [], "Longitude": null, "MediaSourceCount": 0, "MediaSources": [], "MediaStreams": [], "MediaType": "Unknown", "MovieCount": 0, "MusicVideoCount": 0, "Name": null, "NormalizationGain": null, "Number": null, "OfficialRating": null, "OriginalLanguage": false, "OriginalTitle": null, "Overview": null, "ParentArtImageTag": null, "ParentArtItemId": "f7c1bd87-4da5-1709-9471-3d60c8a70639", "ParentBackdropImageTags": [], "ParentBackdropItemId": "e443df78-9558-167f-9ba9-1faf7a024204", "ParentId": "23a7711a-8133-1876-b7eb-dcd9e87a1613", "ParentIndexNumber": 0, "ParentLogoImageTag": null, "ParentLogoItemId": "1846d424-c17c-1279-a3c6-612f48268673", "ParentPrimaryImageItemId": "fcbd04c3-4021-1ef7-8ca5-a5a19e4d6e3c", "ParentPrimaryImageTag": null, "ParentThumbImageTag": null, "ParentThumbItemId": "b4862b21-fb97-1435-8856-1712e8e5216a", "PartCount": 0, "Path": null, "People": [], "PlayAccess": "Full", "PlaylistItemId": null, "PreferredMetadataCountryCode": null, "PreferredMetadataLanguage": null, "PremiereDate": "2000-01-01T00:00:00Z", "PrimaryImageAspectRatio": null, "ProductionLocations": [], "ProductionYear": 0, "ProgramCount": 0, "ProgramId": null, "ProviderIds": {}, "RecursiveItemCount": 0, "RemoteTrailers": [], "RunTimeTicks": 0, "ScreenshotImageTags": [], "SeasonId": "259f4329-e6f4-190b-9a16-4106cf6a659e", "SeasonName": null, "SeriesCount": 0, "SeriesId": "12e0c8b2-bad6-10fb-9948-8dec4f65d4d9", "SeriesName": null, "SeriesPrimaryImageTag": null, "SeriesStudio": null, "SeriesThumbImageTag": null, "SeriesTimerId": null, "ServerId": null, "ShutterSpeed": null, "Software": null, "SongCount": 0, "SortName": null, "SourceType": null, "SpecialFeatureCount": 0, "StartDate": "2000-01-01T00:00:00Z", "Status": null, "Studios": [], "Taglines": [], "Tags": [], "TimerId": null, "TrailerCount": 0, "Trickplay": {}, "Type": "Book", "UserData": null, "Video3DFormat": "MVC", "VideoType": "Dvd", "Width": 0}, "RunTimeTicks": 0, "SeriesTimerId": null, "ServerId": null, "ServiceName": null, "StartDate": "2000-01-01T00:00:00Z", "Status": "New", "Type": null}' http://0.0.0.0:35675/LiveTv/Timers/0 3. Test Case ID: xBQbn4 - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ExternalChannelId": null, "Priority": 304626, "ChannelId": "3611865b-21b4-4397-8767-b5c62e4a53ce", "Type": "3", "ExternalSeriesTimerId": null, "Status": "Error", "ChannelName": null, "StartDate": "2026-10-10T08:08:13.739385Z", "SeriesTimerId": "\u00f4a\u00e8", "ChannelPrimaryImageTag": "7", "ExternalProgramId": ">\u008d\u00fc\ud807\udcb4\u00ca\u00d4F\udbf2\udee9/f\udb71\udc85", "ProgramInfo": null, "EndDate": "2026-10-10T08:07:15.6669296Z", "PrePaddingSeconds": 8320, "RunTimeTicks": null, "PostPaddingSeconds": -204, "ExternalId": null, "Id": null, "ServiceName": "Emby", "KeepUntil": "UntilDeleted", "ProgramId": null}' http://0.0.0.0:35675/LiveTv/Timers/%F3%90%90%83%F1%98%9B%B7%F1%BB%9C%83 4. Test Case ID: i7CQf6 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-2ffc50892321d0c04ed1747c34664ff9-cee6a803b53ac99f-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/Timers/%C3%BE%F0%A2%A3%94%C2%A8%C2%8D 5. Test Case ID: vezEqC - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"timerInfo":["The timerInfo field is required."],"$.EndDate":["The JSON value could not be converted to System.DateTime. Path: $.EndDate | LineNumber: 0 | BytePositionInLine: 343."]},"traceId":"00-612c1a66f3e45d399cfda6675e95e0fa-88b4674a57a5f0c3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ProgramId": "total", "ParentBackdropImageTags": null, "ChannelPrimaryImageTag": null, "ExternalSeriesTimerId": null, "ServiceName": "M1", "Overview": "\ud9f1\udec6\u001e", "ChannelId": "52612f92-c926-4b5d-9efa-08b0a14298a8", "ServerId": "dd5e0484e0f4411590c18c0d435a999c", "IsPrePaddingRequired": true, "EndDate": "0056-08-12T11:54:26-20:46", "Id": "ec2f221fd8e7706b3d3afd2c4591b4d7", "StartDate": "2026-10-10T08:08:13.8698306Z"}' http://0.0.0.0:35675/LiveTv/Timers/%1BH%F2%9A%89%B8%0A%F0%B2%B0%AD%C3%9C ___________________________ POST /LiveTv/TunerHosts ____________________________ 1. Test Case ID: KcFyQL - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"tunerHostInfo":["The tunerHostInfo field is required."],"$.ReadAtNativeFramerate":["The JSON value could not be converted to System.Boolean. Path: $.ReadAtNativeFramerate | LineNumber: 0 | BytePositionInLine: 291."]},"traceId":"00-59acc374f0ccd415420cabfe5e1d7da1-a563b7c7675cff4c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AllowFmp4TranscodingContainer": false, "AllowHWTranscoding": false, "AllowStreamSharing": false, "DeviceId": null, "EnableStreamLooping": false, "FallbackMaxStreamingBitrate": 0, "FriendlyName": null, "Id": null, "IgnoreDts": false, "ImportFavoritesOnly": false, "ReadAtNativeFramerate": {}, "Source": null, "TunerCount": 0, "Type": null, "Url": null, "UserAgent": null}' http://0.0.0.0:35675/LiveTv/TunerHosts 2. Test Case ID: UNFMOK - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AllowFmp4TranscodingContainer": false, "AllowHWTranscoding": false, "AllowStreamSharing": false, "DeviceId": null, "EnableStreamLooping": false, "FallbackMaxStreamingBitrate": 0, "FriendlyName": null, "Id": null, "IgnoreDts": false, "ImportFavoritesOnly": false, "ReadAtNativeFramerate": false, "Source": null, "TunerCount": 0, "Type": null, "Url": null, "UserAgent": false}' http://0.0.0.0:35675/LiveTv/TunerHosts 3. Test Case ID: noyWcp - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-c1cf9bc4e4500839c8cc10bc37675cd1-fe52aeb6338f342a-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/TunerHosts _____________________ POST /LiveTv/Tuners/{tunerId}/Reset ______________________ 1. Test Case ID: o77Jp0 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/LiveTv/Tuners/0/Reset _______________________ POST /Packages/Installed/{name} ________________________ 1. Test Case ID: k8NvkG - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"assemblyGuid":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-3b0614e8391ba516fa6bc99dc92c0ddb-d99fc69212304b73-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Packages/Installed/0?assemblyGuid=null&assemblyGuid=null' 2. Test Case ID: jJ0A4f - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Packages/Installed/playlists1111111111111111111111111111111?version=j5%C3%90&repositoryUrl=%C3%80%F0%91%B8%A8%C2%9E%C2%A5&assemblyGuid=68fad047-403e-2a99-8040-c0a15ff32385' 3. Test Case ID: GW4Xji - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Packages/Installed/6?version=%C3%B8%2A%C2%8D%F0%94%8B%8B%C3%B4%23G%F1%A9%9B%8AK.q%C2%BFt%C2%9D%C2%96&assemblyGuid=4430c780-6fa2-3256-9e5e-d0b2ecc0fa48' _______________________________ POST /Playlists ________________________________ 1. Test Case ID: 7Oqu7z - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Ids": [], "IsPublic": false, "MediaType": "Book", "Name": "", "UserId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "Users": []}' 'http://0.0.0.0:35675/Playlists?name=&ids=e3e70682-c209-1cac-a29f-6fbed82c07cd&mediaType=Unknown' 2. Test Case ID: Et6ENQ - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d null 'http://0.0.0.0:35675/Playlists?name=&ids=e3e70682-c209-1cac-a29f-6fbed82c07cd&userId=e3e70682-c209-1cac-a29f-6fbed82c07cd&mediaType=Unknown' 3. Test Case ID: gd7sM6 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - query: violates `format` at /properties/ids/items - query: violates `enum`, `allOf` at /properties/mediaType - body: violates `enum`, `allOf` at /allOf/0/properties/MediaType [200] OK: `{"Id":"596d8fd4cba992582763fb4acec6a29c"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"MediaType": null, "Name": "\u00b2\u00b4:\u009f\ud93d\udd92\ud8e9\uddeb\u0095\u00fb", "IsPublic": true}' 'http://0.0.0.0:35675/Playlists?ids=%C2%B3%C2%86&ids=%F3%A5%BD%A6%F1%A6%B4%8C%5BEle%F3%8D%A4%92N%C2%AB%C3%82&ids=%C2%96&ids=else&ids=F%F1%BB%8A%AD%C3%BC%C2%AD&ids=%19%C3%8E%F1%A5%92%8ED%C3%9E%F2%8C%93%87%C3%88%C2%B7%C3%85%C2%84%F0%AA%97%98&mediaType=1.1781788475754692e%2B16&userId=820c33d3-c516-571b-9f58-d8c050c05c5b' _________________________ POST /Playlists/{playlistId} _________________________ 1. Test Case ID: ujz90R - Undocumented HTTP status code Received: 415 Documented: 204, 403, 404, 503, 401 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-4d465a939ffe118dd705b41cf599731b-8350c67a693aa08d-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd 2. Test Case ID: VTotOr - Undocumented HTTP status code Received: 400 Documented: 204, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"playlistId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-946e45866c8e004d572102f5e9ad31c3-d5e1bb8dd29f9e1b-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Ids": [], "IsPublic": null, "Name": null, "Users": []}' http://0.0.0.0:35675/Playlists/null%2Cnull 3. Test Case ID: NwtJt9 - Response violates schema "Playlist not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Playlist not found" [404] Not Found: `"Playlist not found"` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Ids": [], "IsPublic": null, "Name": null, "Users": [null, null]}' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd 4. Test Case ID: nn89F5 - JSON deserialization error Response must be valid JSON with 'Content-Type: application/json' header: Expecting value: line 1 column 1 (char 0) - Missing Content-Type header The following media types are documented in the schema: - `application/json` - `application/json; profile="CamelCase"` - `application/json; profile="PascalCase"` [403] Forbidden: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"Ids": ["36ca1ba8-cffc-4e5b-adb5-1d846236ea25"], "IsPublic": true, "Name": "\u00d8", "Users": null}' http://0.0.0.0:35675/Playlists/bb183a0fe171dfdcae84fb6a486dd1fb ______________________ POST /Playlists/{playlistId}/Items ______________________ 1. Test Case ID: WEHVQF - Response violates schema "Playlist not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Playlist not found" [404] Not Found: `"Playlist not found"` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?ids=e3e70682-c209-1cac-a29f-6fbed82c07cd&position=-2147483648' 2. Test Case ID: TjFuuk - Undocumented HTTP status code Received: 400 Documented: 204, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-96359825089ff302da201b844644df16-6632016544002ec9-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?userId=null&userId=null' 3. Test Case ID: nHzIhx - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 403, 404, 503, 401 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Items?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' _________ POST /Playlists/{playlistId}/Items/{itemId}/Move/{newIndex} __________ 1. Test Case ID: wjk7ud - Undocumented HTTP status code Received: 400 Documented: 204, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"newIndex":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-dfb790edfe43104209d73a0f2d4982c7-c88793bc307d14c5-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/0/Items/1300b601aa71fce3ab7be0f09c67d615/Move/2147483648 2. Test Case ID: cTwhl1 - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 403, 404, 503, 401 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/0/Items/1300b601aa71fce3ab7be0f09c67d615/Move/2147483646 _________________ POST /Playlists/{playlistId}/Users/{userId} __________________ 1. Test Case ID: 4goFMm - Undocumented HTTP status code Received: 400 Documented: 204, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"":["The updatePlaylistUserRequest field is required."]},"traceId":"00-35f72414df0be57661456f83b9a163da-e6cfad87ca8d0a92-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd 2. Test Case ID: 1LzrLh - Response violates schema "Playlist not found" is not of type "object" Validated against the response schema for status code 404. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Playlist not found" [404] Not Found: `"Playlist not found"` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CanEdit": false}' http://0.0.0.0:35675/Playlists/e3e70682-c209-1cac-a29f-6fbed82c07cd/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd ____________________ POST /Plugins/{pluginId}/Configuration ____________________ 1. Test Case ID: 5gIiKr - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"pluginId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-30d4793ebcf6b15024a03dbe1dbfbb5f-e05902518dbaf75b-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/null%2Cnull/Configuration 2. Test Case ID: YdFGGv - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 404, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/b8715ed16c4745289ad3f72deb539cd4/Configuration ______________________ POST /Plugins/{pluginId}/Manifest _______________________ 1. Test Case ID: 5Q3qYK - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"pluginId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-5a493d1c2088ffd2af1a7ac7382a29d5-24810bc3a7925251-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/null%2Cnull/Manifest 2. Test Case ID: cTi27f - Undocumented HTTP status code Received: 200 Documented: 204, 404, 503, 401, 403 [200] OK: `{"category":"","changelog":"","description":"","guid":"a629c0dafac54c7e931a7174223f14c8","name":"AudioDB","overview":"","owner":"","targetAbi":"","timestamp":"0001-01-01T00:00:00.0000000Z","version":"12.2.0.0","status":"Active","autoUpdate":true,"assemblies":[]}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/a629c0dafac54c7e931a7174223f14c8/Manifest __________________ POST /Plugins/{pluginId}/{version}/Disable __________________ 1. Test Case ID: 1GFM6J - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"version":["The value \u00270\u0027 is not valid."],"pluginId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-19abc3371accee9bdfd52ea6d4b92b1c-965a62e405626b37-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/null%2Cnull/0/Disable 2. Test Case ID: ydbk0Q - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"version":["The value \u00270\u0027 is not valid."]},"traceId":"00-2a693b5e0264a30593eece95f060203d-06977991364d4e09-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/e3e70682-c209-1cac-a29f-6fbed82c07cd/0/Disable 3. Test Case ID: N8EP9P - Undocumented Content-Type Received: text/plain Documented: application/json, application/json; profile="CamelCase", application/json; profile="PascalCase" [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/8c95c4d2e50c4fb0a4f36c06ff0f9a1a/12.2.0.0/Disable __________________ POST /Plugins/{pluginId}/{version}/Enable ___________________ 1. Test Case ID: AySJXk - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"version":["The value \u00270\u0027 is not valid."],"pluginId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-507fad10178193e83ed4318b993d70dc-f0b9612dde763b94-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/null%2Cnull/0/Enable 2. Test Case ID: 8qj738 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"version":["The value \u00270\u0027 is not valid."]},"traceId":"00-46f3a8fef86c3a79d6a860b05cf9b5c3-836df71031f888c7-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/e3e70682-c209-1cac-a29f-6fbed82c07cd/0/Enable 3. Test Case ID: v0uPYt - Undocumented Content-Type Received: text/plain Documented: application/json, application/json; profile="CamelCase", application/json; profile="PascalCase" [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Plugins/a629c0dafac54c7e931a7174223f14c8/12.2.0.0/Enable _________________________ POST /QuickConnect/Authorize _________________________ 1. Test Case ID: NSRbI2 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 400 Documented: 200, 403, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"code":["The code field is required."]},"traceId":"00-77fb67bab4e259163c3b989d1fadd0b0-4b067ecbe9909810-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/QuickConnect/Authorize?code=' 2. Test Case ID: NSpgy2 - Server error - Undocumented HTTP status code Received: 500 Documented: 200, 403, 503, 401 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/QuickConnect/Authorize?code=491908&userId=20b99d4a1e96434688703d116acb7c6c' 3. Test Case ID: DOwEYf - Undocumented HTTP status code Received: 404 Documented: 200, 403, 503, 401 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/QuickConnect/Authorize?code=%C3%B3%C2%BB%C3%B8&userId=20b99d4a1e96434688703d116acb7c6c' _________________________ POST /QuickConnect/Initiate __________________________ 1. Test Case ID: 9x3wAz - Response violates schema "Quick connect is disabled" is not of type "object" Validated against the response schema for status code 401. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Quick connect is disabled" [401] Unauthorized: `"Quick connect is disabled"` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/QuickConnect/Initiate ______________________________ POST /Repositories ______________________________ 1. Test Case ID: oXZlcM - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-b0656245c5d68952a67390b25a32dd63-b5e473a9ac970601-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Repositories 2. Test Case ID: vtux5v - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"repositoryInfos":["The repositoryInfos field is required."],"$[0].Enabled":["The JSON value could not be converted to System.Boolean. Path: $[0].Enabled | LineNumber: 0 | BytePositionInLine: 14."]},"traceId":"00-7c2e4728cfee6fc7169149e1a2825ddf-39661bc386cd72e0-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '[{"Enabled": {}, "Name": null, "Url": null}]' http://0.0.0.0:35675/Repositories 3. Test Case ID: dIoJhR - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - array with invalid items: Url: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '[{"Enabled": false, "Name": null, "Url": false}]' http://0.0.0.0:35675/Repositories ____________________ POST /ScheduledTasks/{taskId}/Triggers ____________________ 1. Test Case ID: 46pY5I - Undocumented HTTP status code Received: 415 Documented: 204, 404, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-bfdc28a59536fa961c1388de741e7c7b-36d57f8c284aa09b-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/ScheduledTasks/26649fe0aad57557245351f220da916c/Triggers 2. Test Case ID: Tnv7S1 - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.Int64. Path: $ | LineNumber: 0 | BytePositionInLine: 19."],"triggerInfos":["The triggerInfos field is required."]},"traceId":"00-be79c95eac03127e5f5dfe10e48bc1bd-eea825b18b97bb76-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '[{"DayOfWeek": "Friday", "IntervalTicks": 0, "MaxRuntimeTicks": 9223372036854775808, "TimeOfDayTicks": 0, "Type": "DailyTrigger"}]' http://0.0.0.0:35675/ScheduledTasks/26649fe0aad57557245351f220da916c/Triggers 3. Test Case ID: jFoN8m - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - array with invalid items: DayOfWeek: Invalid enum value [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '[{"DayOfWeek": -58800, "IntervalTicks": 0, "MaxRuntimeTicks": 0, "TimeOfDayTicks": 0, "Type": "DailyTrigger"}]' http://0.0.0.0:35675/ScheduledTasks/26649fe0aad57557245351f220da916c/Triggers 4. Test Case ID: xVTA53 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '[{"DayOfWeek": "Friday", "IntervalTicks": 0, "MaxRuntimeTicks": 0, "TimeOfDayTicks": null, "Type": "DailyTrigger"}]' http://0.0.0.0:35675/ScheduledTasks/26649fe0aad57557245351f220da916c/Triggers _________________________ POST /Sessions/Capabilities __________________________ 1. Test Case ID: zuRosr - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"supportsPersistentIdentifier":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-0e55cbbb629aa07fe32600c83e91474c-ee4e5582bfaef271-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Capabilities?supportsPersistentIdentifier=null&supportsPersistentIdentifier=null' 2. Test Case ID: EY8bUG - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `supportedCommands` in query - violates `enum` at /properties/supportedCommands/items [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Capabilities?id=&supportedCommands=&supportedCommands=&supportedCommands=&supportedCommands=' 3. Test Case ID: xYHFSD - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Capabilities?supportsPersistentIdentifier=false&supportsMediaControl=true&playableMediaTypes=Audio&playableMediaTypes=Book&playableMediaTypes=Video&playableMediaTypes=Photo&playableMediaTypes=Book&playableMediaTypes=Video&playableMediaTypes=Unknown&playableMediaTypes=Audio&playableMediaTypes=Photo&playableMediaTypes=Audio&playableMediaTypes=Video&playableMediaTypes=Unknown&playableMediaTypes=Audio&id=350b030810e38c4f3622adee16a2ccb4&supportedCommands=PlayState&supportedCommands=SendKey&supportedCommands=SetMaxStreamingBitrate&supportedCommands=SendKey&supportedCommands=MoveLeft&supportedCommands=SetMaxStreamingBitrate&supportedCommands=PlayTrailers' _______________________ POST /Sessions/Capabilities/Full _______________________ 1. Test Case ID: tXq0oV - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-a79d642024e0fca95e2eb19118434fba-6b145e7160dd900e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Capabilities/Full?id=' 2. Test Case ID: TDo376 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"capabilities":["The capabilities field is required."],"$.IconUrl":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.IconUrl | LineNumber: 0 | BytePositionInLine: 57."]},"traceId":"00-cd586498fb8a603524db53fb5d405eb6-0c4814734d181c6d-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AppStoreUrl": null, "DeviceProfile": null, "IconUrl": {}, "PlayableMediaTypes": [], "SupportedCommands": [], "SupportsMediaControl": false, "SupportsPersistentIdentifier": false}' 'http://0.0.0.0:35675/Sessions/Capabilities/Full?id=' 3. Test Case ID: 3cKFHj - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - iconUrl: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AppStoreUrl": null, "DeviceProfile": null, "IconUrl": false, "PlayableMediaTypes": [], "SupportedCommands": [], "SupportsMediaControl": false, "SupportsPersistentIdentifier": false}' 'http://0.0.0.0:35675/Sessions/Capabilities/Full?id=' 4. Test Case ID: 4iJqaz - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"SupportedCommands": ["PreviousLetter", "NextLetter"]}' 'http://0.0.0.0:35675/Sessions/Capabilities/Full?id=J%C3%87%C3%86' ____________________________ POST /Sessions/Playing ____________________________ 1. Test Case ID: wVVvqm - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.Int32. Path: $ | LineNumber: 0 | BytePositionInLine: 1."],"playbackStartInfo":["The playbackStartInfo field is required."]},"traceId":"00-0e109b3bf80d9802946d96e05855a808-6b1e382cc00d34d3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"AspectRatio": null, "AudioStreamIndex": 0, "Brightness": 0, "CanSeek": false, "IsMuted": false, "IsPaused": false, "Item": {"AirDays": [], "AirTime": null, "AirsAfterSeasonNumber": 0, "AirsBeforeEpisodeNumber": 0, "AirsBeforeSeasonNumber": 0, "Album": null, "AlbumArtist": null, "AlbumArtists": [], "AlbumCount": 0, "AlbumId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "AlbumNormalizationGain": null, "AlbumPrimaryImageTag": null, "Altitude": null, "Aperture": null, "ArtistCount": 0, "ArtistItems": [], "Artists": [], "AspectRatio": null, "Audio": "Thx", "BackdropImageTags": [], "CameraMake": null, "CameraModel": null, "CanDelete": null, "CanDownload": null, "ChannelId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ChannelName": null, "ChannelNumber": null, "ChannelPrimaryImageTag": null, "ChannelType": "TV", "Chapters": [], "ChildCount": 0, "CollectionType": "books", "CommunityRating": null, "CompletionPercentage": null, "Container": null, "CriticRating": null, "CumulativeRunTimeTicks": 0, "CurrentProgram": {"AirDays": [], "AirTime": null, "AirsAfterSeasonNumber": 0, "AirsBeforeEpisodeNumber": 0, "AirsBeforeSeasonNumber": 0, "Album": null, "AlbumArtist": null, "AlbumArtists": [], "AlbumCount": 0, "AlbumId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "AlbumNormalizationGain": null, "AlbumPrimaryImageTag": null, "Altitude": null, "Aperture": null, "ArtistCount": 0, "ArtistItems": [], "Artists": [], "AspectRatio": null, "Audio": "Thx", "BackdropImageTags": [], "CameraMake": null, "CameraModel": null, "CanDelete": null, "CanDownload": null, "ChannelId": "f728b4fa-4248-1e3a-8a5d-2f346baa9455", "ChannelName": null, "ChannelNumber": null, "ChannelPrimaryImageTag": null, "ChannelType": "TV", "Chapters": [], "ChildCount": 0, "CollectionType": "books", "CommunityRating": null, "CompletionPercentage": null, "Container": null, "CriticRating": null, "CumulativeRunTimeTicks": 0, "CurrentProgram": null, "CustomRating": null, "DateCreated": "2000-01-01T00:00:00Z", "DateLastMediaAdded": "2000-01-01T00:00:00Z", "DisplayOrder": null, "DisplayPreferencesId": null, "EnableMediaSourceDisplay": null, "EndDate": "2000-01-01T00:00:00Z", "EpisodeCount": 0, "EpisodeTitle": null, "Etag": null, "ExposureTime": null, "ExternalUrls": [], "ExtraType": "Clip", "FocalLength": null, "ForcedSortName": null, "GenreItems": [], "Genres": [], "HasLyrics": null, "HasSubtitles": null, "Height": 0, "Id": "eb1167b3-67a9-1378-bc65-c1e582e2e662", "ImageBlurHashes": {}, "ImageOrientation": "LeftTop", "ImageTags": {}, "IndexNumber": 0, "IndexNumberEnd": 0, "IsFolder": null, "IsHD": null, "IsKids": null, "IsLive": null, "IsMovie": null, "IsNews": null, "IsPlaceHolder": null, "IsPremiere": null, "IsRepeat": null, "IsSeries": null, "IsSports": null, "IsoSpeedRating": 0, "IsoType": "Dvd", "Latitude": null, "LocalTrailerCount": 0, "LocationType": "Remote", "LockData": null, "LockedFields": [], "Longitude": null, "MediaSourceCount": 0, "MediaSources": [], "MediaStreams": [], "MediaType": "Unknown", "MovieCount": 0, "MusicVideoCount": 0, "Name": null, "NormalizationGain": null, "Number": null, "OfficialRating": null, "OriginalLanguage": null, "OriginalTitle": null, "Overview": null, "ParentArtImageTag": null, "ParentArtItemId": "f7c1bd87-4da5-1709-9471-3d60c8a70639", "ParentBackdropImageTags": [], "ParentBackdropItemId": "e443df78-9558-167f-9ba9-1faf7a024204", "ParentId": "23a7711a-8133-1876-b7eb-dcd9e87a1613", "ParentIndexNumber": 0, "ParentLogoImageTag": null, "ParentLogoItemId": "1846d424-c17c-1279-a3c6-612f48268673", "ParentPrimaryImageItemId": "fcbd04c3-4021-1ef7-8ca5-a5a19e4d6e3c", "ParentPrimaryImageTag": null, "ParentThumbImageTag": null, "ParentThumbItemId": "b4862b21-fb97-1435-8856-1712e8e5216a", "PartCount": 0, "Path": null, "People": [], "PlayAccess": "Full", "PlaylistItemId": null, "PreferredMetadataCountryCode": null, "PreferredMetadataLanguage": null, "PremiereDate": "2000-01-01T00:00:00Z", "PrimaryImageAspectRatio": null, "ProductionLocations": [], "ProductionYear": 0, "ProgramCount": 0, "ProgramId": null, "ProviderIds": {}, "RecursiveItemCount": 0, "RemoteTrailers": [], "RunTimeTicks": 0, "ScreenshotImageTags": [], "SeasonId": "259f4329-e6f4-190b-9a16-4106cf6a659e", "SeasonName": null, "SeriesCount": 0, "SeriesId": "12e0c8b2-bad6-10fb-9948-8dec4f65d4d9", "SeriesName": null, "SeriesPrimaryImageTag": null, "SeriesStudio": null, "SeriesThumbImageTag": null, "SeriesTimerId": null, "ServerId": null, "ShutterSpeed": null, "Software": null, "SongCount": [null, null], "SortName": null, "SourceType": null, "SpecialFeatureCount": 0, "StartDate": "2000-01-01T00:00:00Z", "Status": null, "Studios": [], "Taglines": [], "Tags": [], "TimerId": null, "TrailerCount": 0, "Trickplay": {}, "Type": "Book", "UserData": null, "Video3DFormat": "MVC", "VideoType": "Dvd", "Width": 0}, "CustomRating": null, "DateCreated": "2000-01-01T00:00:00Z", "DateLastMediaAdded": "2000-01-01T00:00:00Z", "DisplayOrder": null, "DisplayPreferencesId": null, "EnableMediaSourceDisplay": null, "EndDate": "2000-01-01T00:00:00Z", "EpisodeCount": 0, "EpisodeTitle": null, "Etag": null, "ExposureTime": null, "ExternalUrls": [], "ExtraType": "Clip", "FocalLength": null, "ForcedSortName": null, "GenreItems": [], "Genres": [], "HasLyrics": null, "HasSubtitles": null, "Height": 0, "Id": "eb1167b3-67a9-1378-bc65-c1e582e2e662", "ImageBlurHashes": {}, "ImageOrientation": "LeftTop", "ImageTags": {}, "IndexNumber": 0, "IndexNumberEnd": 0, "IsFolder": null, "IsHD": null, "IsKids": null, "IsLive": null, "IsMovie": null, "IsNews": null, "IsPlaceHolder": null, "IsPremiere": null, "IsRepeat": null, "IsSeries": null, "IsSports": null, "IsoSpeedRating": 0, "IsoType": "Dvd", "Latitude": null, "LocalTrailerCount": 0, "LocationType": "Remote", "LockData": null, "LockedFields": [], "Longitude": null, "MediaSourceCount": 0, "MediaSources": [], "MediaStreams": [], "MediaType": "Unknown", "MovieCount": 0, "MusicVideoCount": 0, "Name": null, "NormalizationGain": null, "Number": null, "OfficialRating": null, "OriginalLanguage": null, "OriginalTitle": null, "Overview": null, "ParentArtImageTag": null, "ParentArtItemId": "f7c1bd87-4da5-1709-9471-3d60c8a70639", "ParentBackdropImageTags": [], "ParentBackdropItemId": "e443df78-9558-167f-9ba9-1faf7a024204", "ParentId": "23a7711a-8133-1876-b7eb-dcd9e87a1613", "ParentIndexNumber": 0, "ParentLogoImageTag": null, "ParentLogoItemId": "1846d424-c17c-1279-a3c6-612f48268673", "ParentPrimaryImageItemId": "fcbd04c3-4021-1ef7-8ca5-a5a19e4d6e3c", "ParentPrimaryImageTag": null, "ParentThumbImageTag": null, "ParentThumbItemId": "b4862b21-fb97-1435-8856-1712e8e5216a", "PartCount": 0, "Path": null, "People": [], "PlayAccess": "Full", "PlaylistItemId": null, "PreferredMetadataCountryCode": null, "PreferredMetadataLanguage": null, "PremiereDate": "2000-01-01T00:00:00Z", "PrimaryImageAspectRatio": null, "ProductionLocations": [], "ProductionYear": 0, "ProgramCount": 0, "ProgramId": null, "ProviderIds": {}, "RecursiveItemCount": 0, "RemoteTrailers": [], "RunTimeTicks": 0, "ScreenshotImageTags": [], "SeasonId": "259f4329-e6f4-190b-9a16-4106cf6a659e", "SeasonName": null, "SeriesCount": 0, "SeriesId": "12e0c8b2-bad6-10fb-9948-8dec4f65d4d9", "SeriesName": null, "SeriesPrimaryImageTag": null, "SeriesStudio": null, "SeriesThumbImageTag": null, "SeriesTimerId": null, "ServerId": null, "ShutterSpeed": null, "Software": null, "SongCount": 0, "SortName": null, "SourceType": null, "SpecialFeatureCount": 0, "StartDate": "2000-01-01T00:00:00Z", "Status": null, "Studios": [], "Taglines": [], "Tags": [], "TimerId": null, "TrailerCount": 0, "Trickplay": {}, "Type": "Book", "UserData": null, "Video3DFormat": "MVC", "VideoType": "Dvd", "Width": 0}, "ItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "LiveStreamId": null, "MediaSourceId": null, "NowPlayingQueue": [], "PlayMethod": "Transcode", "PlaySessionId": "[Filtered]", "PlaybackOrder": "Default", "PlaybackStartTimeTicks": 0, "PlaylistItemId": null, "PositionTicks": 0, "RepeatMode": "RepeatAll", "SessionId": "[Filtered]", "SubtitleStreamIndex": 0, "VolumeLevel": 0}' http://0.0.0.0:35675/Sessions/Playing 2. Test Case ID: 1cxhaT - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-abe62459627595b206fd1fc70fad28e0-7fa11fd573cf2576-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/Playing _________________________ POST /Sessions/Playing/Ping __________________________ 1. Test Case ID: Apjm3c - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"playSessionId":["The playSessionId field is required."]},"traceId":"00-588eced15c56359b28b17ece2893758f-f7cd3dded4e2d8d4-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/Playing/Ping 2. Test Case ID: lytRnt - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"playSessionId":["The playSessionId field is required."]},"traceId":"00-4a11e9a4029b1e7a216a4ed933b4b32e-53e6d9fdb5958a92-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Playing/Ping?playSessionId=%5BFiltered%5D' _______________________ POST /Sessions/Playing/Progress ________________________ 1. Test Case ID: vA3szZ - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["\u00270xBF\u0027 is an invalid start of a value. Path: $ | LineNumber: 0 | BytePositionInLine: 0."],"playbackProgressInfo":["The playbackProgressInfo field is required."]},"traceId":"00-07421d4be55548ff2ef3cc2967354f67-011226d3e2638f75-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '�d' http://0.0.0.0:35675/Sessions/Playing/Progress 2. Test Case ID: 3G2UBe - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-2395ae18114348a22fb099f251253edb-54a92c83796c6087-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/Playing/Progress 3. Test Case ID: rlWZn5 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - header: violates `required` (was Authorization) - body: violates `type` at /allOf/0/properties/Item/anyOf/0/allOf/0/properties/MediaSources/anyOf/0/items/properties/MediaAttachments/anyOf/0/items/properties/DeliveryUrl/anyOf/1 (was null, became boolean) - body: violates `type` at /allOf/0/properties/Item/anyOf/0/allOf/0/properties/MediaSources/anyOf/0/items/properties/MediaAttachments/anyOf/0/items/properties/FileName/anyOf/1 (was null, became integer) [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Item": {"MediaSources": [{"MediaAttachments": [{"Comment": null, "CodecTag": null, "FileName": -653057, "Codec": null, "MimeType": "", "DeliveryUrl": true, "Index": -251}, {"FileName": -4624, "MimeType": "\ud9ba\udca7\u00af\ud88d\udc60\u00f8\ud84f\uddf2", "DeliveryUrl": true}, {"DeliveryUrl": false, "FileName": -1001558731678474043392}, {"CodecTag": null, "Codec": "", "DeliveryUrl": true, "MimeType": null, "FileName": -203042, "Comment": null, "Index": 5119}, {"FileName": 395, "CodecTag": null, "MimeType": null, "Codec": null, "Index": -4977, "DeliveryUrl": false, "Comment": null}, {"Codec": "cH\u00feK\u009a\u00ec\udac8\udf2a", "FileName": 4697, "CodecTag": "E^", "DeliveryUrl": true}, {"FileName": -2983, "DeliveryUrl": false, "CodecTag": null}, {"CodecTag": "\u00f1", "Codec": null, "MimeType": null, "Comment": "\u00feX\udab1\udd10\ud8a8\udca0\udacc\udc07", "DeliveryUrl": false, "Index": 12538, "FileName": 581}, {"Index": 1828, "DeliveryUrl": true, "MimeType": null, "Comment": null, "Codec": "/\u001b\u00fc=", "CodecTag": "?\u00e2\u001a\u00d2\u0099\u00f0", "FileName": -1380}, {"FileName": -1706, "DeliveryUrl": false}, {"Codec": null, "Index": -1452560, "DeliveryUrl": false, "Comment": null, "FileName": 6946, "MimeType": null, "CodecTag": null}, {"CodecTag": null, "DeliveryUrl": true, "Comment": "", "FileName": 29030666, "MimeType": null, "Index": -33305, "Codec": "av\u00c6\u0013\u008c\udbf6\udd83\u0090\udbba\udfab\u00ad\u00b9\u00ac0"}], "TranscodingSubProtocol": "http", "GenPtsInput": false, "Type": "Grouping"}, {"MediaAttachments": [{"DeliveryUrl": true, "CodecTag": "", "Codec": "\u009aY\u0001Q:\udb00\udd4e\u0097\u00a2f\udb17\udc78\udbfe\udf7d:\u00f1\u00cd", "FileName": -4779244, "Comment": null}], "VideoType": "BluRay", "AnalyzeDurationMs": null, "HasSegments": true, "OpenToken": "[Filtered]", "Protocol": "Http", "Size": null, "IsRemote": true, "BufferMs": 246, "SupportsDirectStream": false, "IsInfiniteStream": false, "FallbackMaxStreamingBitrate": 429234924, "Name": "k\u0095\u0099\ud81d\udef9\uda3b\udcf9\u007f\u00d1\ud9e2\udd03", "UseMostCompatibleTranscodingProfile": true, "Container": "\u0094\u00d3\udb99\ude38;\u000e\u00dc", "IgnoreDts": false}, {"RequiresLooping": false, "RequiresClosing": false, "MediaAttachments": [{"MimeType": null, "FileName": -18164266, "DeliveryUrl": true, "CodecTag": "\u009bf"}, {"MimeType": null, "FileName": -2728491705135, "CodecTag": null, "DeliveryUrl": false, "Comment": "_\u0012\u00cd", "Index": 10856, "Codec": "\u00f2\u0004\u00c5"}, {"FileName": -253285137995507499008, "Codec": "\u0006\u0018\u00f4vz", "DeliveryUrl": false, "CodecTag": null, "MimeType": null, "Index": -61883}, {"CodecTag": "\u000b", "MimeType": null, "Index": -113334033, "FileName": -6469693230, "Codec": "__dict__", "Comment": "\\C\u00c6qmx\ud8bf\udc76\ud9d4\udea1\udb97\udf16\u009b`", "DeliveryUrl": false}, {"CodecTag": "\udb04\udcdeFp", "Comment": null, "FileName": 579087347168248768495616, "Index": -984, "Codec": "\ud99b\udcdfU\u00ce", "MimeType": "5\udb8e\udca9\u00ca", "DeliveryUrl": false}, {"DeliveryUrl": false, "FileName": -26821}, {"DeliveryUrl": false, "FileName": -17329}]}, {"GenPtsInput": false, "HasSegments": false, "MediaAttachments": [{"Codec": "", "DeliveryUrl": true, "FileName": -278945541728431, "CodecTag": null, "MimeType": null, "Index": -2473185, "Comment": "\udb93\uddd4\u009a\u00ed-\uda7b\udcd0\udb1b\ude89\ud872\udda4\u00d0"}, {"DeliveryUrl": true, "Index": -19303652, "MimeType": null, "FileName": 285, "Comment": "\u00a9\u00eb\u0084\udb2a\udc16", "CodecTag": "\u00f3\u0085\u00d1kD\b\u00d0]\u0087\u00817\u00a9", "Codec": ""}, {"DeliveryUrl": true, "FileName": -235, "MimeType": "\u00fc\u009em`\ud919\uddfc\uda76\udd4b\ud8b7\ude4a\u00cb\u001e\u0085\u00f7\u00c3\u00dc"}, {"Codec": null, "CodecTag": "\u008f", "FileName": 780672, "Comment": null, "MimeType": null, "DeliveryUrl": false, "Index": 1549}], "EncoderPath": "\u0017"}, {"Name": "\ud93a\udd94\udb87\udf0c", "Container": "", "RequiredHttpHeaders": null, "MediaAttachments": [{"FileName": -1022674120, "CodecTag": null, "Codec": null, "DeliveryUrl": false}]}, {"TranscodingUrl": null, "MediaAttachments": [{"DeliveryUrl": false, "Index": -296, "FileName": 5764, "Codec": null, "CodecTag": null}, {"DeliveryUrl": false, "FileName": -80}, {"CodecTag": "\u00e0", "DeliveryUrl": false, "FileName": 21789284, "MimeType": ").\u00c4", "Comment": "\udb74\ude10x\u00c6\ud8cd\ude10zm\udbab\udd21\u00cf=iR", "Index": -3032611, "Codec": null}, {"Index": -11174779, "FileName": -162279, "Codec": null, "DeliveryUrl": false, "CodecTag": "\u00d6\ud9ab\udda4\ud92b\udfca\ud9ae\udd6a\u00fa"}, {"Codec": null, "DeliveryUrl": true, "FileName": 5300445, "MimeType": "\udbaa\udedaK\u0099"}, {"CodecTag": "\u009f\u00ea\u001c\udb19\udf5d\u001f\u00e3\u00ff\udaf5\udfca}\ud867\udd27k\u001d\ud912\udc94\u00fc\u00ac", "MimeType": "\u00d0R", "DeliveryUrl": false, "FileName": 1498, "Codec": "\ud9ae\uddbc\u00c4\u009f+\u000bR\u00b4\u00f3 .\ud911\ude8c\u009c\ud8ff\udc39u", "Index": -128810, "Comment": null}, {"MimeType": null, "CodecTag": null, "DeliveryUrl": false, "FileName": -6015, "Comment": "\ud9ec\udef5\u0019", "Index": -73755731}]}, {"MediaAttachments": [{"MimeType": null, "FileName": 250, "Index": -19740, "Codec": "\u001f|\u00a8", "DeliveryUrl": true}, {"MimeType": null, "Index": -267586, "Comment": "t\u00fc\u0007{\u00d3\u008c\ud8e1\udd1c!S\u00c6u1\u00f6", "FileName": -213228276, "CodecTag": null, "Codec": "", "DeliveryUrl": false}]}, {"RequiredHttpHeaders": null, "IgnoreIndex": false, "MediaAttachments": [{"FileName": 325, "DeliveryUrl": true, "CodecTag": "", "Codec": null}, {"MimeType": "\u00d3", "FileName": -504, "CodecTag": "", "DeliveryUrl": false}, {"FileName": 28572, "Codec": null, "DeliveryUrl": true, "MimeType": "\u0012T\u0011\ud9e7\udc6f\udb17\udf37d"}, {"MimeType": null, "FileName": -8416, "DeliveryUrl": false}, {"FileName": 60897, "Index": 78139, "MimeType": null, "DeliveryUrl": true}, {"DeliveryUrl": false, "CodecTag": "", "FileName": 265, "MimeType": null, "Index": 1342, "Comment": null, "Codec": null}, {"CodecTag": "\ud976\ude42\ud9e8\uddc1\u00c7\u00e2A", "Codec": null, "Index": -3628801, "FileName": 720, "DeliveryUrl": true, "MimeType": null}, {"DeliveryUrl": false, "Comment": "H", "FileName": 208}], "TranscodingSubProtocol": "hls", "Type": "Default", "DefaultSubtitleStreamIndex": null}, {"GenPtsInput": false, "MediaAttachments": [{"MimeType": null, "DeliveryUrl": true, "FileName": -38429038843}, {"DeliveryUrl": true, "FileName": -429932}, {"DeliveryUrl": true, "FileName": -2251799813685249, "Comment": null, "CodecTag": null}, {"DeliveryUrl": true, "FileName": -25965}, {"CodecTag": "\u0013\ud9d8\udffd\u00a8X\u00fb\ud9d2\udcb7\u009b\ud998\ude33", "Index": 304, "DeliveryUrl": true, "FileName": 202, "Codec": "\udb94\udfd4\ud92d\udfee", "Comment": "\udb1c\udfef\u0091\u00aak", "MimeType": ""}, {"Codec": null, "DeliveryUrl": true, "FileName": 245979, "CodecTag": null}, {"DeliveryUrl": false, "FileName": 385357387}, {"Codec": "", "CodecTag": null, "Comment": "", "MimeType": null, "FileName": 8388607, "DeliveryUrl": true}, {"FileName": 902, "Comment": "P\u009e2\u0089\u00a5/\u0092", "DeliveryUrl": true, "Index": 1347076294}, {"MimeType": "\u00d9\udb22\udc107", "Codec": "V\ud8f0\ude39a!K\u00aa\u001e\u0090\u0095", "FileName": 46509293002476, "Comment": "\u00ffq\u00a2\u00baU\ud908\udfa5", "DeliveryUrl": true, "Index": -18165, "CodecTag": null}, {"Comment": "8\u0087\u00f3\uda45\udfc8W", "MimeType": null, "FileName": 256, "DeliveryUrl": false}, {"CodecTag": null, "MimeType": "\u00b2\u00f6\u0002\u00f46", "FileName": 107, "DeliveryUrl": false, "Comment": null, "Codec": null, "Index": 806}, {"CodecTag": null, "Codec": null, "Index": 336931, "DeliveryUrl": true, "FileName": 479001599}]}, {"MediaAttachments": [{"FileName": 31385628, "Codec": "Z\u00ae\ud891\udfb0$\u00c4", "DeliveryUrl": false, "Index": 17712, "Comment": "\u008c\u00de\u00cdhq\ud8b0\ude04\u0095\u00b6r{\u00ce"}, {"FileName": -41917289, "DeliveryUrl": false, "Index": 1295405, "Codec": null}, {"FileName": 101, "DeliveryUrl": false}, {"CodecTag": null, "Comment": null, "Index": 6847, "DeliveryUrl": false, "MimeType": "\u0099\ud895\udc36", "FileName": 104777}], "TranscodingUrl": "\u000e\u00f03\udaae\udfa4\u0098\u008a\uda05\uddbc\u00a1\u00ea\u00c6\udb8c\udf99w", "Bitrate": null}], "CameraModel": ""}}' http://0.0.0.0:35675/Sessions/Playing/Progress ________________________ POST /Sessions/Playing/Stopped ________________________ 1. Test Case ID: xWNY5x - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["\u00270x00\u0027 is an invalid start of a value. Path: $ | LineNumber: 0 | BytePositionInLine: 0."],"playbackStopInfo":["The playbackStopInfo field is required."]},"traceId":"00-dbdf8c10186ebea566a48e507a03f421-6755c1ec4db43e4c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d $'\x00' http://0.0.0.0:35675/Sessions/Playing/Stopped 2. Test Case ID: pHgj3u - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-7d45259b97a150a46f87dce41ead069f-c0b9238a71ffa02f-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/Playing/Stopped 3. Test Case ID: hKVPNd - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PositionTicks": -4511, "PlaylistItemId": null, "NowPlayingQueue": [{"PlaylistItemId": null}, {}, {"PlaylistItemId": "\u00e7\u00ef\u00ae\ud87b\udd54", "Id": "4dc68927-40ca-439d-859a-1942d4b8cb84"}, {"Id": "b9d29dce-4106-5bb8-af3a-f27b9a8d572b", "PlaylistItemId": null}, {"PlaylistItemId": ""}]}' http://0.0.0.0:35675/Sessions/Playing/Stopped 4. Test Case ID: ylrkdw - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - header: violates `required` (was Authorization) - body: violates `type` at /allOf/0/properties/Item/anyOf/0/allOf/0/properties/MediaSources/anyOf/0/items/properties/EncoderPath/anyOf/1 (was null, became number) - body: violates `type` at /allOf/0/properties/Item/anyOf/0/allOf/0/properties/ParentPrimaryImageItemId/anyOf/0 (was string, became null) [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Item": {"ParentPrimaryImageItemId": null, "MediaSources": [{"EncoderPath": 2.2131148925536844e+16, "SupportsDirectStream": false, "Id": "4\u00a1\u00c6\u4220\n\u00f7m|\ud9ca\udef8\u00e2.\udb2a\udf2d\ubae0\udb35\udf58\u0000", "FallbackMaxStreamingBitrate": -23, "DefaultAudioStreamIndex": 169, "IsoType": "Dvd"}, {"EncoderPath": -7.1510362021909096e+16}], "NormalizationGain": -1.0843665464220611e+30, "ProgramId": "q*"}, "ItemId": "36732703-1ef3-425d-a085-514989bb2931", "Failed": true, "LiveStreamId": "\u00a5", "PlaylistItemId": "\u009e\u0019i\u00ec\ud857\udfef\udb6a\udcd3\t\uda48\ude31\u00bc\uda06\ude71\udbac\udf71\ud86a\udd5f\u00a8\"", "NextMediaType": ""}' http://0.0.0.0:35675/Sessions/Playing/Stopped ____________________________ POST /Sessions/Viewing ____________________________ 1. Test Case ID: sIs135 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The itemId field is required."]},"traceId":"00-f9c3eabbc296a41699727893f48ef066-879d649649a7207c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Viewing?sessionId=%5BFiltered%5D' 2. Test Case ID: HiCRFh - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Viewing?itemId=7e64e319-657a-9516-ec78-490da03edccb&sessionId=%5BFiltered%5D' 3. Test Case ID: mZNxhS - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Viewing?itemId=9f0a65a3-f0f7-9088-dc28-dd8cfda10b42&sessionId=%5BFiltered%5D' 4. Test Case ID: Uoq03W - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/Viewing?itemId=%C3%AD%C2%81&sessionId=%5BFiltered%5D' ______________________ POST /Sessions/{sessionId}/Command ______________________ 1. Test Case ID: jgdeVq - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-7a5fcb7273a6f2970cb97a8ed41b5d8b-83d75771b60d457e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/0/Command 2. Test Case ID: X1yTNL - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"command":["The command field is required."],"$.Arguments.x-schemathesis-additional":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.Arguments.x-schemathesis-additional | LineNumber: 0 | BytePositionInLine: 45."]},"traceId":"00-acef95b30b08a85ba5fb349cb904a6ba-dadf644c83a226bd-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Arguments": {"x-schemathesis-additional": {}}, "ControllingUserId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "Name": "Back"}' http://0.0.0.0:35675/Sessions/0/Command 3. Test Case ID: 3PeCWK - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Arguments": {"x-schemathesis-additional": null}, "ControllingUserId": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "Name": "Back"}' http://0.0.0.0:35675/Sessions/0/Command 4. Test Case ID: 1fV3Df - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - violates `type` at /allOf/0/properties/Arguments (was object, became null) [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Arguments": null, "Name": "Back", "ControllingUserId": "e3e70682-c209-1cac-a29f-6fbed82c07cd"}' http://0.0.0.0:35675/Sessions/ecc70a12e8426074e9bf8ad95d486ad4/Command 5. Test Case ID: R1tjAB - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"sessionId":["The sessionId field is required."]},"traceId":"00-e7cf5153873918966a7ca931a117ef85-0ba612a82ee64765-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{}' http://0.0.0.0:35675/Sessions/%C2%85/Command _________________ POST /Sessions/{sessionId}/Command/{command} _________________ 1. Test Case ID: aZaEeW - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"command":["The value \u0027-58800\u0027 is invalid."]},"traceId":"00-db440ce8e784648dd915734f4ddfee31-37c14902d8f86c1b-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/0/Command/-58800 2. Test Case ID: AtaTOK - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/0/Command/0 ______________________ POST /Sessions/{sessionId}/Message ______________________ 1. Test Case ID: Kqx5Td - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-7a61ddebdd116938946877a975edb59a-ebcf5eee977b8855-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/0/Message 2. Test Case ID: dBDLsa - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.Int64. Path: $ | LineNumber: 0 | BytePositionInLine: 19."],"command":["The command field is required."]},"traceId":"00-04b64d918bc026d4a2c637469d49f7b7-86fafd05ce0afb71-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Header": null, "Text": "0", "TimeoutMs": 9223372036854775808}' http://0.0.0.0:35675/Sessions/0/Message 3. Test Case ID: F9oB9e - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Header": null, "Text": false, "TimeoutMs": 0}' http://0.0.0.0:35675/Sessions/0/Message 4. Test Case ID: FI2Ubz - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"Text":["The Text field is required."]},"traceId":"00-351f709fab2efcf989e60db06fc94992-efeec48b95951199-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Text": "\u00a0", "Header": "\u00cd", "TimeoutMs": -170}' http://0.0.0.0:35675/Sessions/%C3%8Df%F2%84%A2%95%C3%91%C2%AE%60%F0%B3%AD%B9%C3%AE%C3%90/Message ______________________ POST /Sessions/{sessionId}/Playing ______________________ 1. Test Case ID: 9IFUjS - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/0/Playing?playCommand=PlayNow&itemIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&startPositionTicks=-9223372036854775808&mediaSourceId=&audioStreamIndex=-2147483648&startIndex=-2147483648' 2. Test Case ID: SGOOEE - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"subtitleStreamIndex":["The value \u00272147483648\u0027 is not valid."]},"traceId":"00-605313f9ba42921f5977bc90bb4043cc-cb29becbf8bcf3e3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/0/Playing?itemIds=e3e70682-c209-1cac-a29f-6fbed82c07cd&playCommand=PlayNow&subtitleStreamIndex=2147483648' 3. Test Case ID: zJCES1 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"sessionId":["The sessionId field is required."]},"traceId":"00-7ff98697a3a8d5963f59423199bc3a2e-6372c4a156dc5ea6-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/%0C/Playing?itemIds=4c84f6f2-8b5f-47e3-b8f8-c3fd3bc6c825&itemIds=ec948e6c-efe4-5eee-aab9-6578337d99cf&itemIds=8d00e361-595c-373a-a5af-44de6254d1d9&itemIds=bc7f1cc5-a27e-517b-8912-55344d4c26fb&audioStreamIndex=-6749&playCommand=PlayNow&mediaSourceId=f6108439a07311ab057b17a8246e543a' _________________ POST /Sessions/{sessionId}/Playing/{command} _________________ 1. Test Case ID: ZGYXto - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"seekPositionTicks":["The value \u00279223372036854775808\u0027 is not valid."]},"traceId":"00-9048fb5e1d66afee30ae8fcf2aa82b2b-ddfa649581bdbd04-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/0/Playing/Stop?seekPositionTicks=9223372036854775808' 2. Test Case ID: w4VJOQ - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/0/Playing/Stop?seekPositionTicks=-9223372036854775808' 3. Test Case ID: VDjXvo - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"sessionId":["The sessionId field is required."]},"traceId":"00-521ec34b6fa00b6b1defd62c923c9a2f-c5316d69c7d15587-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/%C2%85/Playing/Pause _________________ POST /Sessions/{sessionId}/System/{command} __________________ 1. Test Case ID: iEBZXr - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"command":["The value \u0027-58800\u0027 is invalid."]},"traceId":"00-d25e85376c4f163da42ac2fe78eff209-0720077634ad8507-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/0/System/-58800 2. Test Case ID: Saqztf - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/0/System/0 ___________________ POST /Sessions/{sessionId}/User/{userId} ___________________ 1. Test Case ID: N6BEwz - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-9aeff061c2614cca7ab02c7b0eb4c161-581b3f23d84516e3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/0/User/null%2Cnull 2. Test Case ID: dLqpHZ - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Sessions/0/User/e3e70682-c209-1cac-a29f-6fbed82c07cd ______________________ POST /Sessions/{sessionId}/Viewing ______________________ 1. Test Case ID: 8yFBsx - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemName":["The itemName field is required."]},"traceId":"00-92c01c5852a4d19b8753d779bc99445b-4457fe464e3eb8d6-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/0/Viewing?itemType=AggregateFolder&itemId=89692d28c060d84a13156005d2da1940' 2. Test Case ID: od5814 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemName":["The itemName field is required."]},"traceId":"00-3aea5b400f34d3b57f0a538dfb16225e-dcfdf07a4fd4b343-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/0/Viewing?itemType=Year&itemId=89692d28c060d84a13156005d2da1940&itemName=' 3. Test Case ID: OaGz9F - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Sessions/%F0%AE%A8%97%C2%BC/Viewing?itemId=%EA%A2%B4&itemName=%0B%C2%A3%C3%89%24&itemType=Episode' _________________________ POST /Startup/Configuration __________________________ 1. Test Case ID: jYOe5B - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-eabf3c774caaccb2babd3c49365bf206-2c1cae1f8aaf6e70-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Startup/Configuration 2. Test Case ID: wPIhT2 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"startupConfiguration":["The startupConfiguration field is required."],"$.PreferredMetadataLanguage":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.PreferredMetadataLanguage | LineNumber: 0 | BytePositionInLine: 60."]},"traceId":"00-fb70eaaa59c6fe3b16cd38eee083a9c1-3b123e56173a0c47-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"MetadataCountryCode": null, "PreferredMetadataLanguage": {}, "ServerName": null, "UICulture": null}' http://0.0.0.0:35675/Startup/Configuration 3. Test Case ID: nFWwl8 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - preferredMetadataLanguage: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"MetadataCountryCode": null, "PreferredMetadataLanguage": false, "ServerName": null, "UICulture": null}' http://0.0.0.0:35675/Startup/Configuration __________________________ POST /Startup/RemoteAccess __________________________ 1. Test Case ID: k6eG6j - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-009c021a30b9a067c17bf162619a2591-67cf3eeeb8144737-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Startup/RemoteAccess 2. Test Case ID: ZYuloE - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"startupRemoteAccessDto":["The startupRemoteAccessDto field is required."],"$.EnableRemoteAccess":["The JSON value could not be converted to System.Boolean. Path: $.EnableRemoteAccess | LineNumber: 0 | BytePositionInLine: 24."]},"traceId":"00-311a480facb756afb3adb51903623934-0915a6bda4e8dfd4-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"EnableRemoteAccess": {}}' http://0.0.0.0:35675/Startup/RemoteAccess 3. Test Case ID: RjKCWh - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: Missing required property: EnableRemoteAccess [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{}' http://0.0.0.0:35675/Startup/RemoteAccess ______________________________ POST /Startup/User ______________________________ 1. Test Case ID: utHPOS - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"startupUserDto":["The startupUserDto field is required."],"$.Password":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.Password | LineNumber: 0 | BytePositionInLine: 28."]},"traceId":"00-31908197bc0d4afe50af67911409ab9e-c6aae0d5c4886fbe-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": null, "Password": "[Filtered]"}' http://0.0.0.0:35675/Startup/User 2. Test Case ID: YsXm6V - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-01dbb97aa898602e7fb782cbd1272d4a-2d08065d1ce42579-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Startup/User ___________________________ POST /SyncPlay/Buffering ___________________________ 1. Test Case ID: nukXxU - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-58a70d899c43b7f3f48603cfecc24308-16c4bed1c2278ad6-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/Buffering 2. Test Case ID: v1cxoV - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"":["The supplied value is invalid."],"requestData":["The requestData field is required."]},"traceId":"00-da98ac4895ef4da0ffa87a45ba75ad44-dd5d912998436143-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IsPlaying": false, "PlaylistItemId": "", "PositionTicks": 0, "When": "2000-01-01T00:00:00Z"}' http://0.0.0.0:35675/SyncPlay/Buffering 3. Test Case ID: uK1G81 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - playlistItemId: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IsPlaying": false, "PlaylistItemId": null, "PositionTicks": 0, "When": "2000-01-01T00:00:00Z"}' http://0.0.0.0:35675/SyncPlay/Buffering 4. Test Case ID: DvTBJq - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.When":["The JSON value could not be converted to System.DateTime. Path: $.When | LineNumber: 0 | BytePositionInLine: 36."]},"traceId":"00-d4255b9a1d4bc09ff8415abcfe8f4e67-49b2564ff9551ff0-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"When": "0255-01-12T21:39:28-17:59", "PositionTicks": -2643, "PlaylistItemId": "c2512f13-9413-20da-9194-a93305330fe3", "IsPlaying": false}' http://0.0.0.0:35675/SyncPlay/Buffering _____________________________ POST /SyncPlay/Join ______________________________ 1. Test Case ID: 0uJrbo - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-36c017d99e713980e0e701ccc81af7b6-86cd0204b7a4850c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/Join 2. Test Case ID: agSbr7 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"":["The supplied value is invalid."],"requestData":["The requestData field is required."]},"traceId":"00-0d9dfc591569d909a6ebfb82a8f3ae5e-5173ebc9f3ecdddb-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"GroupId": ""}' http://0.0.0.0:35675/SyncPlay/Join 3. Test Case ID: MGOA3q - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - groupId: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"GroupId": null}' http://0.0.0.0:35675/SyncPlay/Join _______________________ POST /SyncPlay/MovePlaylistItem ________________________ 1. Test Case ID: Ebww9M - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-8f0e2cc9515b29445e558f5855cf478b-d4e657734db31a2c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/MovePlaylistItem 2. Test Case ID: KZLwoa - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.NewIndex":["The JSON value could not be converted to System.Int32. Path: $.NewIndex | LineNumber: 0 | BytePositionInLine: 23."]},"traceId":"00-4bb66e6bf8256b7c97d441ce0bf2f8c3-60f57bebb022f85a-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"NewIndex": 2147483648, "PlaylistItemId": "e3e70682-c209-1cac-a29f-6fbed82c07cd"}' http://0.0.0.0:35675/SyncPlay/MovePlaylistItem 3. Test Case ID: SwJZVE - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - playlistItemId: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"NewIndex": 0, "PlaylistItemId": null}' http://0.0.0.0:35675/SyncPlay/MovePlaylistItem ______________________________ POST /SyncPlay/New ______________________________ 1. Test Case ID: mwIx1a - Undocumented HTTP status code Received: 415 Documented: 200, 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-829269a69587e8bc6aaea6387f50efe5-f80e90d824644c82-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/New 2. Test Case ID: E1DRYH - Undocumented HTTP status code Received: 400 Documented: 200, 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.GroupName":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.GroupName | LineNumber: 0 | BytePositionInLine: 15."]},"traceId":"00-025bffbb3b65e294f0506978a270eb39-ddb23bbd96cbfcae-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"GroupName": {}}' http://0.0.0.0:35675/SyncPlay/New 3. Test Case ID: Iot0Au - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - groupName: Incorrect type [200] OK: `{"GroupId":"bc15428720d348dfba882311338abbff","GroupName":"false","State":"Idle","Participants":["admin"],"LastUpdatedAt":"2026-10-10T08:00:36.4500715Z"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"GroupName": false}' http://0.0.0.0:35675/SyncPlay/New ___________________________ POST /SyncPlay/NextItem ____________________________ 1. Test Case ID: UaT6GU - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-e8ebab0b74dc81164a124ede861b7b31-5dcf759bb50bdbc0-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/NextItem 2. Test Case ID: XJhKi7 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"":["The supplied value is invalid."],"requestData":["The requestData field is required."]},"traceId":"00-63d0c539c818df47ef2685212ba661c4-8f56b59bfab9a895-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PlaylistItemId": ""}' http://0.0.0.0:35675/SyncPlay/NextItem 3. Test Case ID: dBxXEJ - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - playlistItemId: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PlaylistItemId": null}' http://0.0.0.0:35675/SyncPlay/NextItem _____________________________ POST /SyncPlay/Ping ______________________________ 1. Test Case ID: zfyRww - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-438b14b3475408896936fa71566d466d-82e3cb4ce394de2c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/Ping 2. Test Case ID: ZTaO96 - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.Ping":["The JSON value could not be converted to System.Int64. Path: $.Ping | LineNumber: 0 | BytePositionInLine: 28."]},"traceId":"00-5c462c84b7d6bda03f36c5ba5ff8d8c5-4b80fcaa3e4e43dc-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Ping": 9223372036854775808}' http://0.0.0.0:35675/SyncPlay/Ping 3. Test Case ID: LYNgWE - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - violates `allOf` [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"=": -6578184647609, "\u001d3": {}}' http://0.0.0.0:35675/SyncPlay/Ping _________________________ POST /SyncPlay/PreviousItem __________________________ 1. Test Case ID: sVJmiT - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-65dddb0eb957101f0bb5e48b7493deee-c08424b4f2052882-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/PreviousItem 2. Test Case ID: lxzYbR - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"":["The supplied value is invalid."],"requestData":["The requestData field is required."]},"traceId":"00-daa5a34c2d0e4ca0499d772deaee3c95-1d41f938fcb28ef2-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PlaylistItemId": ""}' http://0.0.0.0:35675/SyncPlay/PreviousItem 3. Test Case ID: oaL7bu - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - playlistItemId: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PlaylistItemId": null}' http://0.0.0.0:35675/SyncPlay/PreviousItem _____________________________ POST /SyncPlay/Queue _____________________________ 1. Test Case ID: RISJfI - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-b030319fce6a5daea5ad3342c09782b1-0bc3911c2636fddf-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/Queue 2. Test Case ID: BtIjNy - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - mode: Invalid enum value [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ItemIds": [], "Mode": -58800}' http://0.0.0.0:35675/SyncPlay/Queue 3. Test Case ID: SujKvn - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.Mode":["The JSON value could not be converted to MediaBrowser.Model.SyncPlay.GroupQueueMode. Path: $.Mode | LineNumber: 0 | BytePositionInLine: 25."]},"traceId":"00-11526f8a6395347cf40659b0158130af-103a675f1ebcf5db-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ItemIds": [], "Mode": {}}' http://0.0.0.0:35675/SyncPlay/Queue _____________________________ POST /SyncPlay/Ready _____________________________ 1. Test Case ID: 2a6ZlK - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-448a09fbb968094cd50259d2fca2e1b6-d0b4b720e76231b5-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/Ready 2. Test Case ID: e9KN6B - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"":["The supplied value is invalid."],"requestData":["The requestData field is required."]},"traceId":"00-4410616d20c25524b32f6865841aad7b-3252c94dac83b820-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IsPlaying": false, "PlaylistItemId": "", "PositionTicks": 0, "When": "2000-01-01T00:00:00Z"}' http://0.0.0.0:35675/SyncPlay/Ready 3. Test Case ID: DFZ69S - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - playlistItemId: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IsPlaying": false, "PlaylistItemId": null, "PositionTicks": 0, "When": "2000-01-01T00:00:00Z"}' http://0.0.0.0:35675/SyncPlay/Ready 4. Test Case ID: nfogTt - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.When":["The JSON value could not be converted to System.DateTime. Path: $.When | LineNumber: 0 | BytePositionInLine: 118."]},"traceId":"00-472f6fff7b98bb0c7e55e6a409480f5b-1cfa98d2af0f7ce2-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PositionTicks": 14017, "PlaylistItemId": "026342bf-05b4-4ecb-bd3a-e75ebdb2b7ce", "When": "0230-01-24T12:49:11-23:11", "IsPlaying": false}' http://0.0.0.0:35675/SyncPlay/Ready ______________________ POST /SyncPlay/RemoveFromPlaylist _______________________ 1. Test Case ID: 4ZGoDV - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-650cb162ca2d4951715e21d3cc75680a-e62a1c2960b5a3f7-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/RemoveFromPlaylist 2. Test Case ID: 6yjuRw - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.ClearPlayingItem":["The JSON value could not be converted to System.Boolean. Path: $.ClearPlayingItem | LineNumber: 0 | BytePositionInLine: 22."]},"traceId":"00-c5b2a03c121ef7ce4f707d992b63af12-4d448c192a7f962b-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ClearPlayingItem": {}, "ClearPlaylist": false, "PlaylistItemIds": []}' http://0.0.0.0:35675/SyncPlay/RemoveFromPlaylist 3. Test Case ID: 0KBAzm - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - playlistItemIds -> Array with invalid items: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ClearPlayingItem": false, "ClearPlaylist": false, "PlaylistItemIds": [null]}' http://0.0.0.0:35675/SyncPlay/RemoveFromPlaylist _____________________________ POST /SyncPlay/Seek ______________________________ 1. Test Case ID: crvURT - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-90401181256f0c10285190838c798dbb-46292109722d5ceb-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/Seek 2. Test Case ID: Q48Gby - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.PositionTicks":["The JSON value could not be converted to System.Int64. Path: $.PositionTicks | LineNumber: 0 | BytePositionInLine: 37."]},"traceId":"00-e80d83351f6eb681c05fb45fdd91db4c-e5a2ff805fe893c3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PositionTicks": 9223372036854775808}' http://0.0.0.0:35675/SyncPlay/Seek _________________________ POST /SyncPlay/SetIgnoreWait _________________________ 1. Test Case ID: XN90VN - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-8c18d5776b21bcac50d03a55e3fcbbe3-a149d6f800623a94-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/SetIgnoreWait 2. Test Case ID: m1H9li - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.IgnoreWait":["The JSON value could not be converted to System.Boolean. Path: $.IgnoreWait | LineNumber: 0 | BytePositionInLine: 16."]},"traceId":"00-4c3d3628642d6622757767ea73e97a5e-3b05c9fdae39a14b-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IgnoreWait": {}}' http://0.0.0.0:35675/SyncPlay/SetIgnoreWait 3. Test Case ID: Bl5Jr1 - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - header: violates `required` (was Authorization) - body: violates `allOf` [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"": {}, "\b": [{"\udad2\ude70\u00d8_\ud8d2\udcb6\u00d0\u00e1": -1e-05, "\ud92c\ude6c\ud902\uddc3": 819712318, "\u00e5\u00df\ud999\udfd6": true}, [], null], "\u0092\u0097\u0017\udbaa\udea0": null, "\udbb5\udca4": [[false, 0.5, "\u2720\u00f6"], {"W\ud891\udc95\uda5b\udfd3\u00f9\ud826\udec4\udad0\udcea": 3.139098139883119e+16, "\udbf6\udfed": false}], "\u00baDG": []}' http://0.0.0.0:35675/SyncPlay/SetIgnoreWait __________________________ POST /SyncPlay/SetNewQueue __________________________ 1. Test Case ID: WxaDpi - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-66ee2bd2ce2a174ff1110d4a660a0c3d-ac9cb8d10154ecf4-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/SetNewQueue 2. Test Case ID: 5lPYds - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.StartPositionTicks":["The JSON value could not be converted to System.Int64. Path: $.StartPositionTicks | LineNumber: 0 | BytePositionInLine: 88."]},"traceId":"00-42d1892fd5f786e0ff52a06c65bfddde-24edc8e891b84ceb-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PlayingItemPosition": 0, "PlayingQueue": [], "StartPositionTicks": 9223372036854775808}' http://0.0.0.0:35675/SyncPlay/SetNewQueue 3. Test Case ID: 24a6gE - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - header: violates `required` (was Authorization) - body: violates `allOf` [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"": {}}' http://0.0.0.0:35675/SyncPlay/SetNewQueue ________________________ POST /SyncPlay/SetPlaylistItem ________________________ 1. Test Case ID: OSTlGR - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-f856e5324932f19bd47622f22b580ebd-12a57b6e88854a5d-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/SetPlaylistItem 2. Test Case ID: Hb9dfF - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"":["The supplied value is invalid."],"requestData":["The requestData field is required."]},"traceId":"00-6cada9e0ec0ecde26270b68fc01b07c6-252d7c6fa3a6d580-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PlaylistItemId": ""}' http://0.0.0.0:35675/SyncPlay/SetPlaylistItem 3. Test Case ID: Wc1ZcV - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - playlistItemId: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"PlaylistItemId": null}' http://0.0.0.0:35675/SyncPlay/SetPlaylistItem _________________________ POST /SyncPlay/SetRepeatMode _________________________ 1. Test Case ID: UeiojV - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-c15b8f18ad1edf61e0bc0a129793a9e0-4d8e506e11786c70-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/SetRepeatMode 2. Test Case ID: d0s32o - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - mode: Invalid enum value [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Mode": -58800}' http://0.0.0.0:35675/SyncPlay/SetRepeatMode 3. Test Case ID: 4PltDH - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.Mode":["The JSON value could not be converted to MediaBrowser.Model.SyncPlay.GroupRepeatMode. Path: $.Mode | LineNumber: 0 | BytePositionInLine: 10."]},"traceId":"00-dae0f1b4a29ffa1e49071f7ecc21ffd4-8a1c5b24b03dc334-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Mode": {}}' http://0.0.0.0:35675/SyncPlay/SetRepeatMode ________________________ POST /SyncPlay/SetShuffleMode _________________________ 1. Test Case ID: uLREhe - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-cdb58b96896db7289bf129e3d7657f1b-92dfa9513a13f195-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/SyncPlay/SetShuffleMode 2. Test Case ID: emyUuZ - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - mode: Invalid enum value [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Mode": -58800}' http://0.0.0.0:35675/SyncPlay/SetShuffleMode 3. Test Case ID: pW63vr - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"requestData":["The requestData field is required."],"$.Mode":["The JSON value could not be converted to MediaBrowser.Model.SyncPlay.GroupShuffleMode. Path: $.Mode | LineNumber: 0 | BytePositionInLine: 10."]},"traceId":"00-acb32add01355d8325d74825a22c95a7-d8ca2d023023b7b5-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Mode": {}}' http://0.0.0.0:35675/SyncPlay/SetShuffleMode __________________________ POST /System/Configuration __________________________ 1. Test Case ID: 5PMtu5 - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-29f55a2a738f3325515173712337d70f-0dfab63ba9fc9cf2-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/System/Configuration 2. Test Case ID: eDWyFA - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"configuration":["The configuration field is required."],"$.EnableLegacyAuthorization":["The JSON value could not be converted to System.Boolean. Path: $.EnableLegacyAuthorization | LineNumber: 0 | BytePositionInLine: 558."]},"traceId":"00-991389cffdbbc50a3d21789153505a1a-95608dd97d6e51ea-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ActivityLogRetentionDays": 0, "AllowClientLogUpload": false, "CachePath": null, "CacheSize": 0, "CastReceiverApplications": [], "ChapterImageResolution": "P144", "CodecsUsed": [], "ContentTypes": [], "CorsHosts": [], "DisableLiveTvChannelUserDataName": false, "DisplaySpecialsWithinSeasons": false, "DummyChapterDuration": 0, "EnableCaseSensitiveItemIds": false, "EnableExternalContentInSuggestions": false, "EnableFolderView": false, "EnableGroupingMoviesIntoCollections": false, "EnableGroupingShowsIntoCollections": false, "EnableLegacyAuthorization": "[Filtered]", "EnableMetrics": false, "EnableNormalizedItemByNameIds": false, "EnableSlowResponseWarning": false, "ImageExtractionTimeoutMs": 0, "ImageSavingConvention": "Legacy", "InactiveSessionThreshold": "[Filtered]", "IsPortAuthorized": "[Filtered]", "IsStartupWizardCompleted": false, "LibraryMetadataRefreshConcurrency": 0, "LibraryMonitorDelay": 0, "LibraryScanFanoutConcurrency": 0, "LibraryUpdateDuration": 0, "LogFileRetentionDays": 0, "MaxAudiobookResume": 0, "MaxResumePct": 0, "MetadataCountryCode": "", "MetadataOptions": [], "MetadataPath": "", "MinAudiobookResume": 0, "MinResumeDurationSeconds": 0, "MinResumePct": 0, "ParallelImageEncodingLimit": 0, "PathSubstitutions": [], "PluginRepositories": [], "PreferredMetadataLanguage": "", "PreviousVersion": null, "PreviousVersionStr": null, "QuickConnectAvailable": false, "RemoteClientBitrateLimit": 0, "SaveMetadataHidden": false, "ServerName": "", "SkipDeserializationForBasicTypes": false, "SlowResponseThresholdMs": 0, "SortRemoveCharacters": [], "SortRemoveWords": [], "SortReplaceCharacters": [], "TrickplayOptions": {}, "UICulture": ""}' http://0.0.0.0:35675/System/Configuration 3. Test Case ID: kvKze6 - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ActivityLogRetentionDays": 0, "AllowClientLogUpload": false, "CachePath": null, "CacheSize": 0, "CastReceiverApplications": [], "ChapterImageResolution": "P144", "CodecsUsed": [], "ContentTypes": [], "CorsHosts": [], "DisableLiveTvChannelUserDataName": false, "DisplaySpecialsWithinSeasons": false, "DummyChapterDuration": 0, "EnableCaseSensitiveItemIds": false, "EnableExternalContentInSuggestions": false, "EnableFolderView": false, "EnableGroupingMoviesIntoCollections": false, "EnableGroupingShowsIntoCollections": false, "EnableLegacyAuthorization": "[Filtered]", "EnableMetrics": false, "EnableNormalizedItemByNameIds": false, "EnableSlowResponseWarning": false, "ImageExtractionTimeoutMs": 0, "ImageSavingConvention": "Legacy", "InactiveSessionThreshold": "[Filtered]", "IsPortAuthorized": "[Filtered]", "IsStartupWizardCompleted": false, "LibraryMetadataRefreshConcurrency": 0, "LibraryMonitorDelay": 0, "LibraryScanFanoutConcurrency": 0, "LibraryUpdateDuration": 0, "LogFileRetentionDays": 0, "MaxAudiobookResume": 0, "MaxResumePct": 0, "MetadataCountryCode": "", "MetadataOptions": [], "MetadataPath": "", "MinAudiobookResume": 0, "MinResumeDurationSeconds": 0, "MinResumePct": 0, "ParallelImageEncodingLimit": 0, "PathSubstitutions": [], "PluginRepositories": [], "PreferredMetadataLanguage": "", "PreviousVersion": null, "PreviousVersionStr": null, "QuickConnectAvailable": false, "RemoteClientBitrateLimit": 0, "SaveMetadataHidden": false, "ServerName": "", "SkipDeserializationForBasicTypes": false, "SlowResponseThresholdMs": 0, "SortRemoveCharacters": [], "SortRemoveWords": [], "SortReplaceCharacters": [], "TrickplayOptions": {"EnableHwAcceleration": false, "EnableHwEncoding": false, "EnableKeyFrameOnlyExtraction": "[Filtered]", "Interval": 0, "JpegQuality": 0, "ProcessPriority": -58800, "ProcessThreads": 0, "Qscale": 0, "ScanBehavior": "Blocking", "TileHeight": 0, "TileWidth": 0, "WidthResolutions": []}, "UICulture": ""}' http://0.0.0.0:35675/System/Configuration 4. Test Case ID: 4urpLY - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - trickplayOptions -> ScanBehavior: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ActivityLogRetentionDays": 0, "AllowClientLogUpload": false, "CachePath": null, "CacheSize": 0, "CastReceiverApplications": [], "ChapterImageResolution": "P144", "CodecsUsed": [], "ContentTypes": [], "CorsHosts": [], "DisableLiveTvChannelUserDataName": false, "DisplaySpecialsWithinSeasons": false, "DummyChapterDuration": 0, "EnableCaseSensitiveItemIds": false, "EnableExternalContentInSuggestions": false, "EnableFolderView": false, "EnableGroupingMoviesIntoCollections": false, "EnableGroupingShowsIntoCollections": false, "EnableLegacyAuthorization": "[Filtered]", "EnableMetrics": false, "EnableNormalizedItemByNameIds": false, "EnableSlowResponseWarning": false, "ImageExtractionTimeoutMs": 0, "ImageSavingConvention": "Legacy", "InactiveSessionThreshold": "[Filtered]", "IsPortAuthorized": "[Filtered]", "IsStartupWizardCompleted": false, "LibraryMetadataRefreshConcurrency": 0, "LibraryMonitorDelay": 0, "LibraryScanFanoutConcurrency": 0, "LibraryUpdateDuration": 0, "LogFileRetentionDays": 0, "MaxAudiobookResume": 0, "MaxResumePct": 0, "MetadataCountryCode": "", "MetadataOptions": [], "MetadataPath": "", "MinAudiobookResume": 0, "MinResumeDurationSeconds": 0, "MinResumePct": 0, "ParallelImageEncodingLimit": 0, "PathSubstitutions": [], "PluginRepositories": [], "PreferredMetadataLanguage": "", "PreviousVersion": null, "PreviousVersionStr": null, "QuickConnectAvailable": false, "RemoteClientBitrateLimit": 0, "SaveMetadataHidden": false, "ServerName": "", "SkipDeserializationForBasicTypes": false, "SlowResponseThresholdMs": 0, "SortRemoveCharacters": [], "SortRemoveWords": [], "SortReplaceCharacters": [], "TrickplayOptions": {"EnableHwAcceleration": false, "EnableHwEncoding": false, "EnableKeyFrameOnlyExtraction": "[Filtered]", "Interval": 0, "JpegQuality": 0, "ProcessPriority": "High", "ProcessThreads": 0, "Qscale": 0, "ScanBehavior": 0, "TileHeight": 0, "TileWidth": 0, "WidthResolutions": []}, "UICulture": ""}' http://0.0.0.0:35675/System/Configuration 5. Test Case ID: VAcZfz - Undocumented HTTP status code Received: 404 Documented: 204, 503, 401, 403 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ActivityLogRetentionDays": 0, "AllowClientLogUpload": false, "CachePath": null, "CacheSize": 0, "CastReceiverApplications": [], "ChapterImageResolution": "P144", "CodecsUsed": [], "ContentTypes": [], "CorsHosts": [], "DisableLiveTvChannelUserDataName": false, "DisplaySpecialsWithinSeasons": false, "DummyChapterDuration": 0, "EnableCaseSensitiveItemIds": false, "EnableExternalContentInSuggestions": false, "EnableFolderView": false, "EnableGroupingMoviesIntoCollections": false, "EnableGroupingShowsIntoCollections": false, "EnableLegacyAuthorization": "[Filtered]", "EnableMetrics": false, "EnableNormalizedItemByNameIds": false, "EnableSlowResponseWarning": false, "ImageExtractionTimeoutMs": 0, "ImageSavingConvention": "Legacy", "InactiveSessionThreshold": "[Filtered]", "IsPortAuthorized": "[Filtered]", "IsStartupWizardCompleted": false, "LibraryMetadataRefreshConcurrency": 0, "LibraryMonitorDelay": 0, "LibraryScanFanoutConcurrency": 0, "LibraryUpdateDuration": 0, "LogFileRetentionDays": 0, "MaxAudiobookResume": 0, "MaxResumePct": 0, "MetadataCountryCode": "", "MetadataOptions": [], "MetadataPath": false, "MinAudiobookResume": 0, "MinResumeDurationSeconds": 0, "MinResumePct": 0, "ParallelImageEncodingLimit": 0, "PathSubstitutions": [], "PluginRepositories": [], "PreferredMetadataLanguage": "", "PreviousVersion": null, "PreviousVersionStr": null, "QuickConnectAvailable": false, "RemoteClientBitrateLimit": 0, "SaveMetadataHidden": false, "ServerName": "", "SkipDeserializationForBasicTypes": false, "SlowResponseThresholdMs": 0, "SortRemoveCharacters": [], "SortRemoveWords": [], "SortReplaceCharacters": [], "TrickplayOptions": {}, "UICulture": ""}' http://0.0.0.0:35675/System/Configuration 6. Test Case ID: JCSLVq - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"ActivityLogRetentionDays": 0, "AllowClientLogUpload": false, "CachePath": null, "CacheSize": 0, "CastReceiverApplications": [], "ChapterImageResolution": "P144", "CodecsUsed": [], "ContentTypes": [], "CorsHosts": [], "DisableLiveTvChannelUserDataName": false, "DisplaySpecialsWithinSeasons": false, "DummyChapterDuration": 0, "EnableCaseSensitiveItemIds": false, "EnableExternalContentInSuggestions": false, "EnableFolderView": false, "EnableGroupingMoviesIntoCollections": false, "EnableGroupingShowsIntoCollections": false, "EnableLegacyAuthorization": "[Filtered]", "EnableMetrics": false, "EnableNormalizedItemByNameIds": false, "EnableSlowResponseWarning": false, "ImageExtractionTimeoutMs": 0, "ImageSavingConvention": "Legacy", "InactiveSessionThreshold": "[Filtered]", "IsPortAuthorized": "[Filtered]", "IsStartupWizardCompleted": false, "LibraryMetadataRefreshConcurrency": 0, "LibraryMonitorDelay": 0, "LibraryScanFanoutConcurrency": 0, "LibraryUpdateDuration": 0, "LogFileRetentionDays": 0, "MaxAudiobookResume": 0, "MaxResumePct": 0, "MetadataCountryCode": "", "MetadataOptions": [], "MetadataPath": "", "MinAudiobookResume": 0, "MinResumeDurationSeconds": 0, "MinResumePct": 0, "ParallelImageEncodingLimit": 0, "PathSubstitutions": [], "PluginRepositories": [], "PreferredMetadataLanguage": "", "PreviousVersion": "", "PreviousVersionStr": null, "QuickConnectAvailable": false, "RemoteClientBitrateLimit": 0, "SaveMetadataHidden": false, "ServerName": "", "SkipDeserializationForBasicTypes": false, "SlowResponseThresholdMs": 0, "SortRemoveCharacters": [], "SortRemoveWords": [], "SortReplaceCharacters": [], "TrickplayOptions": {}, "UICulture": ""}' http://0.0.0.0:35675/System/Configuration _____________________ POST /System/Configuration/Branding ______________________ 1. Test Case ID: gJAPwL - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-d188df52c05dfd783b4175ccb973c30f-076ff43516852bac-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/System/Configuration/Branding 2. Test Case ID: cQnZIF - Undocumented HTTP status code Received: 400 Documented: 204, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"configuration":["The configuration field is required."],"$.SplashscreenEnabled":["The JSON value could not be converted to System.Boolean. Path: $.SplashscreenEnabled | LineNumber: 0 | BytePositionInLine: 69."]},"traceId":"00-37d7da1075eb5414f5c39af0a5b0daa4-1c007122466ee489-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CustomCss": null, "LoginDisclaimer": null, "SplashscreenEnabled": {}}' http://0.0.0.0:35675/System/Configuration/Branding 3. Test Case ID: Vr4HyB - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - customCss: Incorrect type [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CustomCss": false, "LoginDisclaimer": null, "SplashscreenEnabled": false}' http://0.0.0.0:35675/System/Configuration/Branding _______________________ POST /System/Configuration/{key} _______________________ 1. Test Case ID: P3Lagh - Undocumented HTTP status code Received: 415 Documented: 204, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-cb55f528752fdafb60eadd89805873a3-f2de12a099d3a8f4-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/System/Configuration/0 2. Test Case ID: rYjt31 - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{}' http://0.0.0.0:35675/System/Configuration/0 _______________________ POST /UserFavoriteItems/{itemId} _______________________ 1. Test Case ID: 6NaRYb - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-103b9285cf3f6a73bfb7387cdbd687d0-0c04f65bb8b36c72-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserFavoriteItems/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=' 2. Test Case ID: mT2poo - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-95685a0b95c29bb1d798c4f3a86eeac4-bec9539129f2f7dd-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserFavoriteItems/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=null&userId=null' 3. Test Case ID: lWXAML - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - violates `format` at /properties/userId [200] OK: `{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":true,"Played":false,"Key":"f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805","ItemId":"f137a2dd21bbc1b99aa5c0f6bf02a805"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserFavoriteItems/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805?userId=' _______________________________ POST /UserImage ________________________________ 1. Test Case ID: px93Dr - Response violates schema "Incorrect ContentType." is not of type "object" Validated against the response schema for status code 400. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Incorrect ContentType." [400] Bad Request: `"Incorrect ContentType."` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserImage?userId=' _______________________ POST /UserItems/{itemId}/Rating ________________________ 1. Test Case ID: Zmp9Ek - Undocumented HTTP status code Received: 404 Documented: 200, 503, 401, 403 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-c1c65fa24eddaa7c354f276d809ba7fb-a4b3b76d1893d8e2-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/e3e70682-c209-1cac-a29f-6fbed82c07cd/Rating?userId=' 2. Test Case ID: P7b9pd - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-45567743b434db244facae1379a0bf5b-70933c69a3585e5a-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/e3e70682-c209-1cac-a29f-6fbed82c07cd/Rating?userId=null&userId=null' 3. Test Case ID: izaEwm - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - violates `format` at /properties/userId [200] OK: `{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":true,"Played":false,"Key":"f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c","ItemId":"f3f27ee6f4f35441ac7ecd00d1ff3f3c"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/Rating?userId=' ______________________ POST /UserItems/{itemId}/UserData _______________________ 1. Test Case ID: sSEd20 - Undocumented HTTP status code Received: 415 Documented: 200, 404, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-74ee4b9ee953fdf0dc7987c13d65733b-525cc4686d06601e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserItems/e3e70682-c209-1cac-a29f-6fbed82c07cd/UserData?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 2. Test Case ID: G2m0o5 - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-d5edc637af7851ff7b50a62816cdc45c-a8fc7ab8eb29e202-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IsFavorite": null, "ItemId": null, "Key": "[Filtered]", "LastPlayedDate": "2000-01-01T00:00:00Z", "Likes": null, "PlayCount": 0, "PlaybackPositionTicks": 0, "Played": null, "PlayedPercentage": null, "Rating": null, "UnplayedItemCount": 0}' 'http://0.0.0.0:35675/UserItems/e3e70682-c209-1cac-a29f-6fbed82c07cd/UserData?userId=null&userId=null' 3. Test Case ID: NTCdIf - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"Rating": -1.3333983358486814e+16, "IsFavorite": true, "UnplayedItemCount": 4649, "PlayCount": null, "LastPlayedDate": "2026-10-10T08:00:49.6967125Z", "PlayedPercentage": 1.7976931348623157e+308, "PlaybackPositionTicks": null, "Likes": true, "Key": "[Filtered]", "ItemId": "1300b601aa71fce3ab7be0f09c67d615", "Played": null}' 'http://0.0.0.0:35675/UserItems/f3f27ee6-f4f3-5441-ac7e-cd00d1ff3f3c/UserData?userId=71be7f779a014ae180dd7792b545ba78' 4. Test Case ID: Nx24Cx - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: - header: violates `required` (was Authorization) - body: violates `type` at /allOf/0/properties/Key/anyOf/1 (was null, became number) [200] OK: `{"PlaybackPositionTicks":-10456244605227834,"PlayCount":0,"IsFavorite":false,"Played":true,"Key":"7e64e319-657a-9516-ec78-490da03edccb","ItemId":"7e64e319657a9516ec78490da03edccb"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Likes": null, "Key": "[Filtered]"}' 'http://0.0.0.0:35675/UserItems/7e64e319-657a-9516-ec78-490da03edccb/UserData?userId=f9ff635f144d447e964e9987a17516c2' ________________________ POST /UserPlayedItems/{itemId} ________________________ 1. Test Case ID: eD1uZz - Undocumented HTTP status code Received: 400 Documented: 200, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-2390cc7cd49a8fcb78a309ac45691d37-5388c3e838ccaa3e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserPlayedItems/e3e70682-c209-1cac-a29f-6fbed82c07cd?userId=null&userId=null' 2. Test Case ID: HIvt2w - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"datePlayed":["The value \u00273689-03-14T12:49:24.90\u002B15:16\u0027 is not valid."]},"traceId":"00-e3c6201f69e490b55a226bd5755428dc-b08f3d292cd85b4e-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/UserPlayedItems/7e64e319-657a-9516-ec78-490da03edccb?userId=e9a116328e0f47c5bef9217cb9d1750a&datePlayed=3689-03-14T12%3A49%3A24.90%2B15%3A16' _________________________________ POST /Users __________________________________ 1. Test Case ID: ROKTS6 - Undocumented HTTP status code Received: 415 Documented: 204, 400, 403, 503, 401 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-a1408b4d36bb1c058f8e097fa0b02e76-e17d9f8d4ee85b05-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Users?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 2. Test Case ID: FGpJz8 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented Content-Type Received: text/plain Documented: application/json, application/json; profile="CamelCase", application/json; profile="PascalCase" [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Configuration": null, "EnableAutoLogin": null, "HasConfiguredEasyPassword": "[Filtered]", "HasConfiguredPassword": "[Filtered]", "HasPassword": "[Filtered]", "Id": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "LastActivityDate": "2000-01-01T00:00:00Z", "LastLoginDate": "2000-01-01T00:00:00Z", "Name": null, "Policy": null, "PrimaryImageAspectRatio": null, "PrimaryImageTag": null, "ServerId": null, "ServerName": null}' 'http://0.0.0.0:35675/Users?userId=cfea0e450db444f29ce155f440437321' 3. Test Case ID: N5E8oI - Undocumented HTTP status code Received: 404 Documented: 204, 400, 403, 503, 401 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-567b696f75ff84b6ebbe1f96114b63d1-1484cc6c5cb5bead-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Configuration": null, "EnableAutoLogin": null, "HasConfiguredEasyPassword": "[Filtered]", "HasConfiguredPassword": "[Filtered]", "HasPassword": "[Filtered]", "Id": "e3e70682-c209-1cac-a29f-6fbed82c07cd", "LastActivityDate": "2000-01-01T00:00:00Z", "LastLoginDate": "2000-01-01T00:00:00Z", "Name": null, "Policy": {"AccessSchedules": [], "AllowedTags": [], "AuthenticationProviderId": "[Filtered]", "BlockUnratedItems": [], "BlockedChannels": [], "BlockedMediaFolders": [], "BlockedTags": [], "EnableAllChannels": false, "EnableAllDevices": false, "EnableAllFolders": false, "EnableAudioPlaybackTranscoding": false, "EnableCollectionManagement": false, "EnableContentDeletion": false, "EnableContentDeletionFromFolders": [], "EnableContentDownloading": false, "EnableLiveTvAccess": false, "EnableLiveTvManagement": false, "EnableLyricManagement": false, "EnableMediaConversion": false, "EnableMediaPlayback": false, "EnablePlaybackRemuxing": false, "EnablePublicSharing": false, "EnableRemoteAccess": false, "EnableRemoteControlOfOtherUsers": false, "EnableSharedDeviceControl": false, "EnableSubtitleManagement": false, "EnableSyncTranscoding": false, "EnableUserPreferenceAccess": false, "EnableVideoPlaybackTranscoding": false, "EnabledChannels": [], "EnabledDevices": [], "EnabledFolders": [], "ForceRemoteSourceTranscoding": false, "InvalidLoginAttemptCount": 0, "IsAdministrator": false, "IsDisabled": false, "IsHidden": false, "LoginAttemptsBeforeLockout": 0, "MaxActiveSessions": "[Filtered]", "MaxParentalRating": 0, "MaxParentalSubRating": 0, "PasswordResetProviderId": "[Filtered]", "RemoteClientBitrateLimit": 0, "SyncPlayAccess": -58800}, "PrimaryImageAspectRatio": null, "PrimaryImageTag": null, "ServerId": null, "ServerName": null}' 'http://0.0.0.0:35675/Users?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 4. Test Case ID: cul4HP - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 400, 403, 503, 401 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Configuration": null, "Policy": null, "LastLoginDate": "2026-10-10T08:07:15.6885324Z", "HasConfiguredEasyPassword": "[Filtered]", "ServerName": null, "EnableAutoLogin": true, "PrimaryImageAspectRatio": null, "ServerId": null, "HasPassword": "[Filtered]", "HasConfiguredPassword": "[Filtered]", "Name": "TV-Y7-FV"}' 'http://0.0.0.0:35675/Users?userId=001b6bc34e194124aed0a0639707b41d' ________________________ POST /Users/AuthenticateByName ________________________ 1. Test Case ID: oxt6FQ - Undocumented HTTP status code Received: 415 Documented: 200, 503 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-9eba3cc7e951930542f469a58918adcb-ec5629a79ab801bb-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/AuthenticateByName 2. Test Case ID: b5GHKp - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"request":["The request field is required."],"$.Pw":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.Pw | LineNumber: 0 | BytePositionInLine: 8."]},"traceId":"00-5634bf37c3b2babd84a6f53ddfde0b3e-48467ee60d9c6d04-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Pw": {}, "Username": null}' http://0.0.0.0:35675/Users/AuthenticateByName 3. Test Case ID: 8hh0ap - Undocumented HTTP status code Received: 401 Documented: 200, 503 [401] Unauthorized: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Pw": null, "Username": false}' http://0.0.0.0:35675/Users/AuthenticateByName 4. Test Case ID: zlkVOF - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Pw": "", "Username": null}' http://0.0.0.0:35675/Users/AuthenticateByName 5. Test Case ID: JFIkqm - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - violates `anyOf` at /allOf/0/properties/Username [200] OK: `{"User":{"Name":"false","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"e37befb03c3342c29b1eee525726066d","HasPassword":true,"HasConfiguredPassword":true,"HasConfiguredEasyPassword":false,"EnableAutoLogin":false,"LastLoginDate":"2026-10-10T08:28:10.1340312Z","LastActivityDate":"2026-10-10T08:28:10.1340312Z","Configuration":{"PlayDefaultAudioTrack":true,"SubtitleLanguagePreference":"","DisplayMissingEpisodes":false,"GroupedFolders":[],"SubtitleMode":"Default","DisplayCollectionsView":false,"EnableLocalPa // Output truncated...` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"Username": false}' http://0.0.0.0:35675/Users/AuthenticateByName ___________________ POST /Users/AuthenticateWithQuickConnect ___________________ 1. Test Case ID: K1Tx3l - Undocumented HTTP status code Received: 415 Documented: 200, 400, 503 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-db285cf952d43f788451ec3186e9467e-e79cca18b6c5b84c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/AuthenticateWithQuickConnect 2. Test Case ID: 2UAPp0 - Undocumented HTTP status code Received: 401 Documented: 200, 400, 503 [401] Unauthorized: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Secret": "[Filtered]"}' http://0.0.0.0:35675/Users/AuthenticateWithQuickConnect 3. Test Case ID: hl7H16 - Undocumented HTTP status code Received: 404 Documented: 200, 400, 503 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Secret": "[Filtered]"}' http://0.0.0.0:35675/Users/AuthenticateWithQuickConnect __________________________ POST /Users/Configuration ___________________________ 1. Test Case ID: icM6dy - Undocumented HTTP status code Received: 415 Documented: 204, 403, 503, 401 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-c5f26ff9862dfbe9045f42fd795cb7cc-e170697e3e106b87-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Users/Configuration?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 2. Test Case ID: Lxpyrh - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: parameter `userId` in query - value not matching the 'uuid' format [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AudioLanguagePreference": null, "CastReceiverId": null, "DisplayCollectionsView": false, "DisplayMissingEpisodes": false, "EnableLocalPassword": "[Filtered]", "EnableNextEpisodeAutoPlay": false, "GroupedFolders": [], "HidePlayedInLatest": false, "LatestItemsExcludes": [], "MyMediaExcludes": [], "OrderedViews": [], "PlayDefaultAudioTrack": false, "RememberAudioSelections": false, "RememberSubtitleSelections": false, "SubtitleLanguagePreference": null, "SubtitleMode": "None"}' 'http://0.0.0.0:35675/Users/Configuration?userId=' 3. Test Case ID: pVD5Oe - Undocumented HTTP status code Received: 400 Documented: 204, 403, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-e7989439fb133a6909634f7a97b4ef43-a8b9e3bba09aaf6d-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AudioLanguagePreference": null, "CastReceiverId": null, "DisplayCollectionsView": false, "DisplayMissingEpisodes": false, "EnableLocalPassword": "[Filtered]", "EnableNextEpisodeAutoPlay": false, "GroupedFolders": [], "HidePlayedInLatest": false, "LatestItemsExcludes": [], "MyMediaExcludes": [], "OrderedViews": [], "PlayDefaultAudioTrack": false, "RememberAudioSelections": false, "RememberSubtitleSelections": false, "SubtitleLanguagePreference": null, "SubtitleMode": "None"}' 'http://0.0.0.0:35675/Users/Configuration?userId=null&userId=null' 4. Test Case ID: EbM9RN - Undocumented HTTP status code Received: 404 Documented: 204, 403, 503, 401 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-983168cd423f08c5d97fb767d9ca19d6-bb8636380b482fc3-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AudioLanguagePreference": null, "CastReceiverId": false, "DisplayCollectionsView": false, "DisplayMissingEpisodes": false, "EnableLocalPassword": "[Filtered]", "EnableNextEpisodeAutoPlay": false, "GroupedFolders": [], "HidePlayedInLatest": false, "LatestItemsExcludes": [], "MyMediaExcludes": [], "OrderedViews": [], "PlayDefaultAudioTrack": false, "RememberAudioSelections": false, "RememberSubtitleSelections": false, "SubtitleLanguagePreference": null, "SubtitleMode": "None"}' 'http://0.0.0.0:35675/Users/Configuration?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' __________________________ POST /Users/ForgotPassword __________________________ 1. Test Case ID: cBtnHY - Undocumented HTTP status code Received: 415 Documented: 200, 503 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-dfb64939636731434ab557d7c1b2d63b-33a49a4b573884f4-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/ForgotPassword 2. Test Case ID: lenw8C - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"forgotPasswordRequest":["The forgotPasswordRequest field is required."],"$.EnteredUsername":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.EnteredUsername | LineNumber: 0 | BytePositionInLine: 21."]},"traceId":"00-e158fd03e5f7a45f018310e08e5355ad-c87ac64fcf5409a2-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"EnteredUsername": {}}' http://0.0.0.0:35675/Users/ForgotPassword 3. Test Case ID: 2XhKkw - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - enteredUsername: Incorrect type [200] OK: `{"Action":"PinCode","PinFile":"/config/passwordreset183cd1ddeb4812360898c69fcb523b24.json","PinExpirationDate":"2026-10-10T08:30:50.0530564Z"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"EnteredUsername": false}' http://0.0.0.0:35675/Users/ForgotPassword ________________________ POST /Users/ForgotPassword/Pin ________________________ 1. Test Case ID: PbrSwR - Undocumented HTTP status code Received: 415 Documented: 200, 503 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-c1db4d2303275cb9d4169c115e25c804-c9fc428bd4bff0fc-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/ForgotPassword/Pin 2. Test Case ID: 8SvAVP - Undocumented HTTP status code Received: 400 Documented: 200, 503 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"forgotPasswordPinRequest":["The forgotPasswordPinRequest field is required."],"$.Pin":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.Pin | LineNumber: 0 | BytePositionInLine: 9."]},"traceId":"00-672810b09573ca4cb7d4712d45457cba-dbbc413f9bdd427c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Pin": {}}' http://0.0.0.0:35675/Users/ForgotPassword/Pin 3. Test Case ID: tdsqLi - Undocumented HTTP status code Received: 404 Documented: 200, 503 [404] Not Found: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Pin": false}' http://0.0.0.0:35675/Users/ForgotPassword/Pin 4. Test Case ID: RYUJMB - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"Pin":["The Pin field is required."]},"traceId":"00-03870de83a31aeb0f656624b32039b90-207253661a386042-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"Pin": " \t"}' http://0.0.0.0:35675/Users/ForgotPassword/Pin ________________________________ POST /Users/Me ________________________________ 1. Test Case ID: bSFgCy - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-40cb6f2d3e7f20a0353c0462aad33b0b-a4cf2d3608fb87d5-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/Me _______________________________ POST /Users/New ________________________________ 1. Test Case ID: QBNeh1 - Undocumented HTTP status code Received: 415 Documented: 200, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-3f3e1163da8a7ba55ff1c2ec412cc162-a36f2f3f03463df9-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/New 2. Test Case ID: nd9egL - Undocumented HTTP status code Received: 400 Documented: 200, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"request":["The request field is required."],"$.Password":["The converter \u0027Jellyfin.Extensions.Json.Converters.JsonStringConverter\u0027 read too much or not enough. Path: $.Password | LineNumber: 0 | BytePositionInLine: 27."]},"traceId":"00-83d5babb545149d426d6846ab507d1f8-311145b75c9e161c-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "Password": "[Filtered]"}' http://0.0.0.0:35675/Users/New 3. Test Case ID: 4CoDPX - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - password: Incorrect type [200] OK: `{"Name":"0","ServerId":"dd5e0484e0f4411590c18c0d435a999c","Id":"ff53c59634c440fc88ea6fcb6bedc289","HasPassword":true,"HasConfiguredPassword":true,"HasConfiguredEasyPassword":false,"EnableAutoLogin":false,"Configuration":{"PlayDefaultAudioTrack":true,"SubtitleLanguagePreference":"","DisplayMissingEpisodes":false,"GroupedFolders":[],"SubtitleMode":"Default","DisplayCollectionsView":false,"EnableLocalPassword":false,"OrderedViews":[],"LatestItemsExcludes":[],"MyMediaExcludes":[],"HidePlayedInLatest":true,"Reme // Output truncated...` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "Password": "[Filtered]"}' http://0.0.0.0:35675/Users/New 4. Test Case ID: cUtErb - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Name": "0", "Password": "[Filtered]"}' http://0.0.0.0:35675/Users/New _____________________________ POST /Users/Password _____________________________ 1. Test Case ID: XpDYxv - Undocumented HTTP status code Received: 415 Documented: 204, 403, 404, 503, 401 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-de3a3542bcbff9b28eb1afe5a522fc63-328f80f17e9a96af-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Users/Password?userId=e3e70682-c209-1cac-a29f-6fbed82c07cd' 2. Test Case ID: YFMCfU - Undocumented HTTP status code Received: 400 Documented: 204, 403, 404, 503, 401 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"userId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-d046cee77479c7969ab7ee38f82a7835-7b10d398b280194a-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CurrentPassword": "[Filtered]", "CurrentPw": null, "NewPw": null, "ResetPassword": "[Filtered]"}' 'http://0.0.0.0:35675/Users/Password?userId=null&userId=null' 3. Test Case ID: GqmZ0U - API accepted schema-violating request Invalid data should have been rejected Expected: 400, 401, 403, 404, 405, 406, 409, 415, 422, 428, 429, 5xx Invalid component: in body - violates `anyOf` at /allOf/0/properties/CurrentPw [204] No Content: Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"CurrentPw": false, "CurrentPassword": "[Filtered]", "ResetPassword": "[Filtered]"}' 'http://0.0.0.0:35675/Users/Password?userId=2b688af9db6b42bd87f5b562dd69658e' ______________________________ POST /Users/Public ______________________________ 1. Test Case ID: 5bVAuN - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-3889ef7949d465be63babb6a76c7e1fe-877362e33f227ebc-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/Public _____________________________ POST /Users/{userId} _____________________________ 1. Test Case ID: nXHy4E - Unsupported methods Unsupported method POST returned 415, expected 405 Method Not Allowed Return 405 for methods not listed in the OpenAPI spec [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-accf5b506d3b4fd39380e3982f8dfa3e-9ad97f0cc23661ff-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd _________________________ POST /Users/{userId}/Policy __________________________ 1. Test Case ID: BeXK7b - Undocumented HTTP status code Received: 415 Documented: 204, 400, 403, 503, 401 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-fa0d30b0359d2b9634a64246967592c2-2b41b073232797de-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd/Policy 2. Test Case ID: O4ZBIw - Undocumented HTTP status code Received: 404 Documented: 204, 400, 403, 503, 401 [404] Not Found: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.5","title":"Not Found","status":404,"traceId":"00-09b17d8bddcccee911bce9b882c474a3-5939d50ff6a8e38d-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"AccessSchedules": [], "AllowedTags": [], "AuthenticationProviderId": "[Filtered]", "BlockUnratedItems": [], "BlockedChannels": [], "BlockedMediaFolders": [], "BlockedTags": [], "EnableAllChannels": false, "EnableAllDevices": false, "EnableAllFolders": false, "EnableAudioPlaybackTranscoding": false, "EnableCollectionManagement": false, "EnableContentDeletion": false, "EnableContentDeletionFromFolders": [], "EnableContentDownloading": false, "EnableLiveTvAccess": false, "EnableLiveTvManagement": false, "EnableLyricManagement": false, "EnableMediaConversion": false, "EnableMediaPlayback": false, "EnablePlaybackRemuxing": false, "EnablePublicSharing": false, "EnableRemoteAccess": false, "EnableRemoteControlOfOtherUsers": false, "EnableSharedDeviceControl": false, "EnableSubtitleManagement": false, "EnableSyncTranscoding": false, "EnableUserPreferenceAccess": false, "EnableVideoPlaybackTranscoding": false, "EnabledChannels": [], "EnabledDevices": [], "EnabledFolders": [], "ForceRemoteSourceTranscoding": false, "InvalidLoginAttemptCount": 0, "IsAdministrator": false, "IsDisabled": false, "IsHidden": false, "LoginAttemptsBeforeLockout": 0, "MaxActiveSessions": "[Filtered]", "MaxParentalRating": 0, "MaxParentalSubRating": 0, "PasswordResetProviderId": "[Filtered]", "RemoteClientBitrateLimit": 0, "SyncPlayAccess": -58800}' http://0.0.0.0:35675/Users/e3e70682-c209-1cac-a29f-6fbed82c07cd/Policy 3. Test Case ID: njCB18 - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx - Undocumented Content-Type Received: text/plain Documented: application/json, application/json; profile="CamelCase", application/json; profile="PascalCase" [400] Bad Request: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"EnabledChannels": null, "PasswordResetProviderId": "[Filtered]", "AuthenticationProviderId": "[Filtered]"}' http://0.0.0.0:35675/Users/3d4ac515988543d9951db8317a01025c/Policy 4. Test Case ID: 2nL0fZ - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 400, 403, 503, 401 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"EnableAllDevices": true, "IsDisabled": true, "AccessSchedules": null, "EnablePlaybackRemuxing": false, "EnabledChannels": [], "AuthenticationProviderId": "[Filtered]", "EnableLyricManagement": false, "EnableAudioPlaybackTranscoding": false, "BlockedMediaFolders": null, "IsHidden": false, "PasswordResetProviderId": "[Filtered]", "EnableRemoteControlOfOtherUsers": true}' http://0.0.0.0:35675/Users/5e65af525f664f23a62b8f0bf26c6d78/Policy __________________________ POST /Videos/MergeVersions __________________________ 1. Test Case ID: cGrjrG - Response violates schema "Please supply at least two videos to merge." is not of type "object" Validated against the response schema for status code 400. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Please supply at least two videos to merge." [400] Bad Request: `"Please supply at least two videos to merge."` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/MergeVersions 2. Test Case ID: K4boQs - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `"Please supply at least two videos to merge."` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Videos/MergeVersions?ids=e3e70682-c209-1cac-a29f-6fbed82c07cd&ids=f728b4fa-4248-1e3a-8a5d-2f346baa9455' _______________________ POST /Videos/{itemId}/Subtitles ________________________ 1. Test Case ID: gEK8zJ - Undocumented HTTP status code Received: 415 Documented: 204, 404, 503, 401, 403 [415] Unsupported Media Type: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.16","title":"Unsupported Media Type","status":415,"traceId":"00-aebe9a4ead33000934a8a1bf54711b0a-c57b814292cec6c2-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' http://0.0.0.0:35675/Videos/e3e70682-c209-1cac-a29f-6fbed82c07cd/Subtitles 2. Test Case ID: I6PbQ2 - Undocumented HTTP status code Received: 400 Documented: 204, 404, 503, 401, 403 [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"itemId":["The value \u0027null,null\u0027 is not valid."]},"traceId":"00-7c802b19b343ecb90ccb3d3f528bb97b-3d69267007757809-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"Data": "0", "Format": "0", "IsForced": false, "IsHearingImpaired": false, "Language": "0"}' http://0.0.0.0:35675/Videos/null%2Cnull/Subtitles 3. Test Case ID: qysD7W - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"Data":["The Data field is required."]},"traceId":"00-b7a32c7a8655cfadf057931d446bacd1-371bada3188c8b93-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{"Language": "c\u00e2", "IsForced": true, "Data": "\u00a0", "IsHearingImpaired": true, "Format": "\u00b3\ud859\udf9d\u00f0i\u001a|\ud83d\udc3e/\udb27\udfdf\udbab\uded7\ud8d1\udeef\ud84f\udd09\udbec\udd2f"}' http://0.0.0.0:35675/Videos/f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805/Subtitles ________________________________ Stateful tests ________________________________ 1. Test Case ID: TCCGFy - Server error - Undocumented HTTP status code Received: 500 Documented: 204, 503, 401, 403 [500] Internal Server Error: `Error processing request.` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: text/json' -d '{}' 'http://0.0.0.0:35675/DisplayPreferences/c943e52d135f537cc4b2876b0c91b6da?client=%C3%86G%03%F1%B1%9E%B8%C2%B3%3C%C3%B7S%F1%AE%BA%84%C2%80%C3%B7&userId=7bf49374-cb2c-26e3-8774-c87a33677f54' 2. Test Case ID: 6RBCc3 - Response violates schema "Unauthorized access" is not of type "object" Validated against the response schema for status code 401. Schema: { "type": "object", "properties": { "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { // Output truncated... } Value: "Unauthorized access" [401] Unauthorized: `"Unauthorized access"` Reproduce with: curl -X GET -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Library/MediaFolders?isHidden=false' curl -X DELETE -H 'Authorization: [Filtered]' 'http://0.0.0.0:35675/Items?ids=62e1119e388c0b8c0119fca011118d42' 3. Test Case ID: Pj9INu - API rejected schema-compliant request Valid data should have been accepted Expected: 2xx, 3xx, 401, 403, 404, 409, 429, 5xx [400] Bad Request: `{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["The JSON value could not be converted to System.DateTime. Path: $ | LineNumber: 0 | BytePositionInLine: 29."],"body":["The body field is required."]},"traceId":"00-b2e2d06f3efded4fd8f2a9a8b34ff240-67a598bb782f4a97-00"}` Reproduce with: curl -X POST -H 'Authorization: [Filtered]' -H 'Content-Type: application/json' -d '{"IsNews": true, "IsSeries": null, "MaxEndDate": null, "SortBy": ["IsPlayed", "SeriesSortName", "ProductionYear", "Random", "AlbumArtist", "Studio", "DatePlayed", "Studio", "SeriesSortName"], "UserId": "b798b9b6-fb3f-2ee9-a0cc-558aa7fb24d6", "SortOrder": ["Ascending", "Ascending"], "LibrarySeriesId": "3a3eba66-ce76-2d87-9299-35d78e7c5909", "ImageTypeLimit": null, "MinStartDate": "0234-08-26T20:25:05.9+23:26", "GenreIds": ["cddb7b77-5d25-1763-bae2-81790d28bb0e", "a864f710-ac10-5c12-8b47-a6f5caaf1c16"], "Limit": -18523274}' http://0.0.0.0:35675/LiveTv/Programs =================================== WARNINGS =================================== Authentication failed: 8 operations returned authentication errors 401 Unauthorized (7 operations): - DELETE /Playlists/{playlistId}/Items - DELETE /Playlists/{playlistId}/Users/{userId} - GET /LiveTv/Channels/{channelId} - GET /LiveTv/Programs/{programId} - GET /LiveTv/Recordings/{recordingId} - POST /Branding/Splashscreen - POST /LiveTv/ChannelMappings 403 Forbidden (1 operation): - POST /Startup/User 💡 Ensure valid authentication credentials are set via --auth or -H Missing test data: 68 operations repeatedly returned 404 Not Found, preventing tests from reaching your API's core logic No links point to these operations (3 operations): - DELETE /Library/VirtualFolders - GET /Backup/Manifest - GET /web/ConfigurationPage 💡 Provide realistic parameter values in your config file so tests can access existing resources No links point to these operations - nothing in the schema appears to supply the data they need (17 operations): - DELETE /Audio/{itemId}/Lyrics - DELETE /LiveTv/Recordings/{recordingId} - DELETE /Videos/{itemId}/AlternateSources - GET /Audio/{itemId}/Lyrics - GET /Audio/{itemId}/RemoteSearch/Lyrics - GET /Devices/Options - GET /LiveTv/LiveRecordings/{recordingId}/stream - GET /LiveTv/LiveStreamFiles/{streamId}/stream.{container} - GET /MediaSegments/{itemId} - GET /SyncPlay/{id} - HEAD /Artists/{name}/Images/{imageType}/{imageIndex} - HEAD /MusicGenres/{name}/Images/{imageType} - HEAD /MusicGenres/{name}/Images/{imageType}/{imageIndex} - POST /Audio/{itemId}/Lyrics - POST /Audio/{itemId}/RemoteSearch/Lyrics/{lyricId} - POST /Packages/Installed/{name} - POST /Videos/{itemId}/Subtitles 💡 Schemathesis found no operation that creates this data - create it outside the test run and supply the identifiers in your config file Reachable via links, but stateful testing never reached them (13 operations): - DELETE /Plugins/{pluginId} - DELETE /Plugins/{pluginId}/{version} - GET /Albums/{itemId}/InstantMix - GET /Artists/{itemId}/InstantMix - GET /LiveTv/SeriesTimers/{timerId} - GET /MusicGenres/InstantMix - GET /Playlists/{itemId}/InstantMix - GET /Plugins/{pluginId}/Configuration - GET /Providers/Lyrics/{lyricId} - GET /UserViews/GroupingOptions - POST /Items/{itemId}/Refresh - POST /Plugins/{pluginId}/Configuration - POST /Plugins/{pluginId}/{version}/Disable 💡 Raise `phases.stateful.max-steps` or run longer so stateful testing reaches these operations Reached via links, but the linked data was not usable (35 operations): - DELETE /Items/{itemId}/Images/{imageType} - DELETE /Items/{itemId}/Images/{imageType}/{imageIndex} - DELETE /ScheduledTasks/Running/{taskId} - DELETE /UserPlayedItems/{itemId} - GET /Audio/{itemId}/universal - GET /Devices/Info - GET /Items/{itemId}/Ancestors - GET /Items/{itemId}/Collections - GET /Items/{itemId}/Download - GET /Items/{itemId}/ExternalIdInfos - GET /Items/{itemId}/File - GET /Items/{itemId}/Images - GET /Items/{itemId}/InstantMix - GET /Items/{itemId}/PlaybackInfo - GET /Items/{itemId}/RemoteImages - GET /Items/{itemId}/RemoteSearch/Subtitles/{language} - GET /Items/{itemId}/ThemeMedia - GET /Items/{itemId}/ThemeVideos - GET /Persons/{name} - GET /ScheduledTasks/{taskId} - GET /Shows/{seriesId}/Seasons - GET /UserImage - GET /UserItems/{itemId}/UserData - GET /Videos/{itemId}/Trickplay/{width}/tiles.m3u8 - GET /Videos/{itemId}/Trickplay/{width}/{index}.jpg - GET /Videos/{itemId}/{mediaSourceId}/Subtitles/{index}/subtitles.m3u8 - HEAD /Audio/{itemId}/universal - HEAD /Items/{itemId}/Images/{imageType}/{imageIndex}/{tag}/{format}/{maxWidth}/{maxHeight}/{percentPlayed}/{unplayedCount} - HEAD /UserImage - POST /Items/{itemId}/ContentType - POST /Items/{itemId}/RemoteSearch/Subtitles/{subtitleId} - POST /Plugins/{pluginId}/Manifest - POST /Plugins/{pluginId}/{version}/Enable - POST /ScheduledTasks/{taskId}/Triggers - POST /UserItems/{itemId}/UserData 💡 Check the operations that create this data - their responses do not yield usable identifiers =================================== SUMMARY ==================================== API Operations: Selected: 361/364 Tested: 361 Test Phases: ⏭ Examples ❌ Coverage 🚫 Fuzzing 🚫 Stateful Failures: ❌ API accepts requests without authentication: 20 ❌ Server error: 60 ❌ Unexpected response to a request without authentication: 2 ❌ Response violates schema: 47 ❌ API accepted schema-violating request: 134 ❌ API rejected schema-compliant request: 125 ❌ Invalid Allow header: 22 ❌ JSON deserialization error: 5 ❌ Missing Content-Type header: 6 ❌ Missing header not rejected: 18 ❌ Undocumented Content-Type: 10 ❌ Undocumented HTTP status code: 468 ❌ Unsupported methods: 16 Errors: 🚫 Serialization not possible: 5 Warnings: ⚠️ Missing authentication: 8 operations returned only 401/403 responses ⚠️ Missing valid test data: 68 operations repeatedly returned 404 responses Test cases: 326220 generated, 799 found 933 unique failures, 477 skipped Seed: 190227831666066577281857626373276405947 ================ 933 failures, 5 errors, 2 warnings in 3602.14s ================