plex_ruby_sdk 0.8.0 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8c826c6bba14335b50adff99ea7aeadace3961d533aeb638c984539c524ef57a
4
- data.tar.gz: 1cbc5ab44c993b9a38dee33743a3c20829a38fd74e1d4cac39a89e20caab5147
3
+ metadata.gz: cf3067a10347445724f3a5df1fc48c14e5ca0816e712b9f368e6bccac6cfc9e2
4
+ data.tar.gz: 878ce677d32082acefa11d54b24c0dcf6f93f8550bbaa87f6ca4e4aa6237a08f
5
5
  SHA512:
6
- metadata.gz: 2a523986a25e9095fc461b49e55295d6b7db299ed012719f771cec9ece3eb409996b406f6147a07194ac336140e8939a53b95c4223e8867e39a2ffc70b2b681c
7
- data.tar.gz: f340e7c3c73b071cf403b98eca04190df9b251999e9d54bdf62e562bd9cb5a39d2d95fa4c26dae6fbba4a22ec35e85791b353146dc6f57c71d50803b56755f60
6
+ metadata.gz: d0e4e861fe59f6432aa7c6fdd5270ee7f9c2e00258af2f1d8db023c7f05c0ead2f060a1ec926828263dae2711be25e0b6717109f096afe93e968441462939ce8
7
+ data.tar.gz: 579c5b9be0c52f9a981d0e875ac673e1e6e70b6f2b3cac47aa6e6998f3b5e07d5bb8424cac60f81a6045ca5411e6b17cc7f5b605b96162812bf698c1758faba6
@@ -1523,6 +1523,400 @@ module PlexRubySDK
1523
1523
  end
1524
1524
 
1525
1525
 
1526
+ sig { params(rating_key: ::Integer, timeout_ms: T.nilable(Integer)).returns(::PlexRubySDK::Operations::GetMediaArtsResponse) }
1527
+ def get_media_arts(rating_key, timeout_ms = nil)
1528
+ # get_media_arts - Get Media Background Artwork
1529
+ # Returns the background artwork for a library item.
1530
+ request = ::PlexRubySDK::Operations::GetMediaArtsRequest.new(
1531
+
1532
+ rating_key: rating_key
1533
+ )
1534
+ url, params = @sdk_configuration.get_server_details
1535
+ base_url = Utils.template_url(url, params)
1536
+ url = Utils.generate_url(
1537
+ ::PlexRubySDK::Operations::GetMediaArtsRequest,
1538
+ base_url,
1539
+ '/library/metadata/{ratingKey}/arts',
1540
+ request
1541
+ )
1542
+ headers = {}
1543
+ headers['Accept'] = 'application/json'
1544
+ headers['user-agent'] = @sdk_configuration.user_agent
1545
+
1546
+ security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1547
+
1548
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
1549
+ timeout ||= @sdk_configuration.timeout
1550
+
1551
+ connection = @sdk_configuration.client
1552
+
1553
+ hook_ctx = SDKHooks::HookContext.new(
1554
+ base_url: base_url,
1555
+ oauth2_scopes: nil,
1556
+ operation_id: 'get-media-arts',
1557
+ security_source: @sdk_configuration.security_source
1558
+ )
1559
+
1560
+ error = T.let(nil, T.nilable(StandardError))
1561
+ r = T.let(nil, T.nilable(Faraday::Response))
1562
+
1563
+ begin
1564
+ r = connection.get(url) do |req|
1565
+ req.headers.merge!(headers)
1566
+ req.options.timeout = timeout unless timeout.nil?
1567
+ Utils.configure_request_security(req, security)
1568
+
1569
+ @sdk_configuration.hooks.before_request(
1570
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
1571
+ hook_ctx: hook_ctx
1572
+ ),
1573
+ request: req
1574
+ )
1575
+ end
1576
+ rescue StandardError => e
1577
+ error = e
1578
+ ensure
1579
+ if r.nil? || Utils.error_status?(r.status)
1580
+ r = @sdk_configuration.hooks.after_error(
1581
+ error: error,
1582
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
1583
+ hook_ctx: hook_ctx
1584
+ ),
1585
+ response: r
1586
+ )
1587
+ else
1588
+ r = @sdk_configuration.hooks.after_success(
1589
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1590
+ hook_ctx: hook_ctx
1591
+ ),
1592
+ response: r
1593
+ )
1594
+ end
1595
+
1596
+ if r.nil?
1597
+ raise error if !error.nil?
1598
+ raise 'no response'
1599
+ end
1600
+ end
1601
+
1602
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
1603
+
1604
+ res = ::PlexRubySDK::Operations::GetMediaArtsResponse.new(
1605
+ status_code: r.status, content_type: content_type, raw_response: r
1606
+ )
1607
+ if r.status == 200
1608
+ if Utils.match_content_type(content_type, 'application/json')
1609
+ out = Crystalline.unmarshal_json(JSON.parse(r.env.response_body), ::PlexRubySDK::Operations::GetMediaArtsResponseBody)
1610
+ res.object = out
1611
+ end
1612
+ elsif r.status == 404
1613
+ end
1614
+
1615
+ res
1616
+ end
1617
+
1618
+
1619
+ sig { params(rating_key: ::Integer, url: T.nilable(::String), request_body: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(::PlexRubySDK::Operations::PostMediaArtsResponse) }
1620
+ def post_media_arts(rating_key, url = nil, request_body = nil, timeout_ms = nil)
1621
+ # post_media_arts - Upload Media Background Artwork
1622
+ # Uploads an image to use as the background artwork for a library item, either from a local file or a remote URL
1623
+ request = ::PlexRubySDK::Operations::PostMediaArtsRequest.new(
1624
+
1625
+ rating_key: rating_key,
1626
+ url: url,
1627
+ request_body: request_body
1628
+ )
1629
+ url, params = @sdk_configuration.get_server_details
1630
+ base_url = Utils.template_url(url, params)
1631
+ url = Utils.generate_url(
1632
+ ::PlexRubySDK::Operations::PostMediaArtsRequest,
1633
+ base_url,
1634
+ '/library/metadata/{ratingKey}/arts',
1635
+ request
1636
+ )
1637
+ headers = {}
1638
+ req_content_type, data, form = Utils.serialize_request_body(request, :request_body, :raw)
1639
+ headers['content-type'] = req_content_type
1640
+
1641
+ if form
1642
+ body = Utils.encode_form(form)
1643
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
1644
+ body = URI.encode_www_form(data)
1645
+ else
1646
+ body = data
1647
+ end
1648
+ query_params = Utils.get_query_params(::PlexRubySDK::Operations::PostMediaArtsRequest, request)
1649
+ headers['Accept'] = '*/*'
1650
+ headers['user-agent'] = @sdk_configuration.user_agent
1651
+
1652
+ security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1653
+
1654
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
1655
+ timeout ||= @sdk_configuration.timeout
1656
+
1657
+ connection = @sdk_configuration.client
1658
+
1659
+ hook_ctx = SDKHooks::HookContext.new(
1660
+ base_url: base_url,
1661
+ oauth2_scopes: nil,
1662
+ operation_id: 'post-media-arts',
1663
+ security_source: @sdk_configuration.security_source
1664
+ )
1665
+
1666
+ error = T.let(nil, T.nilable(StandardError))
1667
+ r = T.let(nil, T.nilable(Faraday::Response))
1668
+
1669
+ begin
1670
+ r = connection.post(url) do |req|
1671
+ req.body = body
1672
+ req.headers.merge!(headers)
1673
+ req.options.timeout = timeout unless timeout.nil?
1674
+ req.params = query_params
1675
+ Utils.configure_request_security(req, security)
1676
+
1677
+ @sdk_configuration.hooks.before_request(
1678
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
1679
+ hook_ctx: hook_ctx
1680
+ ),
1681
+ request: req
1682
+ )
1683
+ end
1684
+ rescue StandardError => e
1685
+ error = e
1686
+ ensure
1687
+ if r.nil? || Utils.error_status?(r.status)
1688
+ r = @sdk_configuration.hooks.after_error(
1689
+ error: error,
1690
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
1691
+ hook_ctx: hook_ctx
1692
+ ),
1693
+ response: r
1694
+ )
1695
+ else
1696
+ r = @sdk_configuration.hooks.after_success(
1697
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1698
+ hook_ctx: hook_ctx
1699
+ ),
1700
+ response: r
1701
+ )
1702
+ end
1703
+
1704
+ if r.nil?
1705
+ raise error if !error.nil?
1706
+ raise 'no response'
1707
+ end
1708
+ end
1709
+
1710
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
1711
+
1712
+ res = ::PlexRubySDK::Operations::PostMediaArtsResponse.new(
1713
+ status_code: r.status, content_type: content_type, raw_response: r
1714
+ )
1715
+ if r.status == 200
1716
+ elsif r.status == 404
1717
+ end
1718
+
1719
+ res
1720
+ end
1721
+
1722
+
1723
+ sig { params(rating_key: ::Integer, timeout_ms: T.nilable(Integer)).returns(::PlexRubySDK::Operations::GetMediaPostersResponse) }
1724
+ def get_media_posters(rating_key, timeout_ms = nil)
1725
+ # get_media_posters - Get Media Posters
1726
+ # Returns the available posters for a library item.
1727
+ request = ::PlexRubySDK::Operations::GetMediaPostersRequest.new(
1728
+
1729
+ rating_key: rating_key
1730
+ )
1731
+ url, params = @sdk_configuration.get_server_details
1732
+ base_url = Utils.template_url(url, params)
1733
+ url = Utils.generate_url(
1734
+ ::PlexRubySDK::Operations::GetMediaPostersRequest,
1735
+ base_url,
1736
+ '/library/metadata/{ratingKey}/posters',
1737
+ request
1738
+ )
1739
+ headers = {}
1740
+ headers['Accept'] = 'application/json'
1741
+ headers['user-agent'] = @sdk_configuration.user_agent
1742
+
1743
+ security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1744
+
1745
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
1746
+ timeout ||= @sdk_configuration.timeout
1747
+
1748
+ connection = @sdk_configuration.client
1749
+
1750
+ hook_ctx = SDKHooks::HookContext.new(
1751
+ base_url: base_url,
1752
+ oauth2_scopes: nil,
1753
+ operation_id: 'get-media-posters',
1754
+ security_source: @sdk_configuration.security_source
1755
+ )
1756
+
1757
+ error = T.let(nil, T.nilable(StandardError))
1758
+ r = T.let(nil, T.nilable(Faraday::Response))
1759
+
1760
+ begin
1761
+ r = connection.get(url) do |req|
1762
+ req.headers.merge!(headers)
1763
+ req.options.timeout = timeout unless timeout.nil?
1764
+ Utils.configure_request_security(req, security)
1765
+
1766
+ @sdk_configuration.hooks.before_request(
1767
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
1768
+ hook_ctx: hook_ctx
1769
+ ),
1770
+ request: req
1771
+ )
1772
+ end
1773
+ rescue StandardError => e
1774
+ error = e
1775
+ ensure
1776
+ if r.nil? || Utils.error_status?(r.status)
1777
+ r = @sdk_configuration.hooks.after_error(
1778
+ error: error,
1779
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
1780
+ hook_ctx: hook_ctx
1781
+ ),
1782
+ response: r
1783
+ )
1784
+ else
1785
+ r = @sdk_configuration.hooks.after_success(
1786
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1787
+ hook_ctx: hook_ctx
1788
+ ),
1789
+ response: r
1790
+ )
1791
+ end
1792
+
1793
+ if r.nil?
1794
+ raise error if !error.nil?
1795
+ raise 'no response'
1796
+ end
1797
+ end
1798
+
1799
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
1800
+
1801
+ res = ::PlexRubySDK::Operations::GetMediaPostersResponse.new(
1802
+ status_code: r.status, content_type: content_type, raw_response: r
1803
+ )
1804
+ if r.status == 200
1805
+ if Utils.match_content_type(content_type, 'application/json')
1806
+ out = Crystalline.unmarshal_json(JSON.parse(r.env.response_body), ::PlexRubySDK::Operations::GetMediaPostersResponseBody)
1807
+ res.object = out
1808
+ end
1809
+ elsif r.status == 404
1810
+ end
1811
+
1812
+ res
1813
+ end
1814
+
1815
+
1816
+ sig { params(rating_key: ::Integer, url: T.nilable(::String), request_body: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(::PlexRubySDK::Operations::PostMediaPosterResponse) }
1817
+ def post_media_poster(rating_key, url = nil, request_body = nil, timeout_ms = nil)
1818
+ # post_media_poster - Upload Media Poster
1819
+ # Uploads a poster to a library item, either from a local file or a remote URL
1820
+ request = ::PlexRubySDK::Operations::PostMediaPosterRequest.new(
1821
+
1822
+ rating_key: rating_key,
1823
+ url: url,
1824
+ request_body: request_body
1825
+ )
1826
+ url, params = @sdk_configuration.get_server_details
1827
+ base_url = Utils.template_url(url, params)
1828
+ url = Utils.generate_url(
1829
+ ::PlexRubySDK::Operations::PostMediaPosterRequest,
1830
+ base_url,
1831
+ '/library/metadata/{ratingKey}/posters',
1832
+ request
1833
+ )
1834
+ headers = {}
1835
+ req_content_type, data, form = Utils.serialize_request_body(request, :request_body, :raw)
1836
+ headers['content-type'] = req_content_type
1837
+
1838
+ if form
1839
+ body = Utils.encode_form(form)
1840
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
1841
+ body = URI.encode_www_form(data)
1842
+ else
1843
+ body = data
1844
+ end
1845
+ query_params = Utils.get_query_params(::PlexRubySDK::Operations::PostMediaPosterRequest, request)
1846
+ headers['Accept'] = '*/*'
1847
+ headers['user-agent'] = @sdk_configuration.user_agent
1848
+
1849
+ security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
1850
+
1851
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
1852
+ timeout ||= @sdk_configuration.timeout
1853
+
1854
+ connection = @sdk_configuration.client
1855
+
1856
+ hook_ctx = SDKHooks::HookContext.new(
1857
+ base_url: base_url,
1858
+ oauth2_scopes: nil,
1859
+ operation_id: 'post-media-poster',
1860
+ security_source: @sdk_configuration.security_source
1861
+ )
1862
+
1863
+ error = T.let(nil, T.nilable(StandardError))
1864
+ r = T.let(nil, T.nilable(Faraday::Response))
1865
+
1866
+ begin
1867
+ r = connection.post(url) do |req|
1868
+ req.body = body
1869
+ req.headers.merge!(headers)
1870
+ req.options.timeout = timeout unless timeout.nil?
1871
+ req.params = query_params
1872
+ Utils.configure_request_security(req, security)
1873
+
1874
+ @sdk_configuration.hooks.before_request(
1875
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
1876
+ hook_ctx: hook_ctx
1877
+ ),
1878
+ request: req
1879
+ )
1880
+ end
1881
+ rescue StandardError => e
1882
+ error = e
1883
+ ensure
1884
+ if r.nil? || Utils.error_status?(r.status)
1885
+ r = @sdk_configuration.hooks.after_error(
1886
+ error: error,
1887
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
1888
+ hook_ctx: hook_ctx
1889
+ ),
1890
+ response: r
1891
+ )
1892
+ else
1893
+ r = @sdk_configuration.hooks.after_success(
1894
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1895
+ hook_ctx: hook_ctx
1896
+ ),
1897
+ response: r
1898
+ )
1899
+ end
1900
+
1901
+ if r.nil?
1902
+ raise error if !error.nil?
1903
+ raise 'no response'
1904
+ end
1905
+ end
1906
+
1907
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
1908
+
1909
+ res = ::PlexRubySDK::Operations::PostMediaPosterResponse.new(
1910
+ status_code: r.status, content_type: content_type, raw_response: r
1911
+ )
1912
+ if r.status == 200
1913
+ elsif r.status == 404
1914
+ end
1915
+
1916
+ res
1917
+ end
1918
+
1919
+
1526
1920
  sig { params(rating_key: ::Float, include_elements: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(::PlexRubySDK::Operations::GetMetadataChildrenResponse) }
1527
1921
  def get_metadata_children(rating_key, include_elements = nil, timeout_ms = nil)
1528
1922
  # get_metadata_children - Get Items Children
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class GetMediaArtsMediaContainer < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # An plugin identifier for the media container.
15
+ field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
16
+ # The prefix used for media tag resource paths.
17
+ field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
18
+ # The version number for media tags.
19
+ field :media_tag_version, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
20
+
21
+ field :metadata, T::Array[::PlexRubySDK::Operations::GetMediaArtsMetadata], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
22
+ # Number of media items returned in this response.
23
+ field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
24
+
25
+
26
+ sig { params(identifier: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, metadata: T::Array[::PlexRubySDK::Operations::GetMediaArtsMetadata], size: ::Integer).void }
27
+ def initialize(identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, size: nil)
28
+ @identifier = identifier
29
+ @media_tag_prefix = media_tag_prefix
30
+ @media_tag_version = media_tag_version
31
+ @metadata = metadata
32
+ @size = size
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class GetMediaArtsMetadata < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The URL of the artwork.
15
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
16
+ # The URL of the artwork.
17
+ field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
18
+ # Whether this is the selected artwork.
19
+ field :selected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('selected') } }
20
+ # The URL of the artwork thumbnail.
21
+ field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
22
+ # The provider of the artwork.
23
+ field :provider, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('provider') } }
24
+
25
+
26
+ sig { params(key: ::String, rating_key: ::String, selected: T::Boolean, thumb: ::String, provider: T.nilable(::String)).void }
27
+ def initialize(key: nil, rating_key: nil, selected: nil, thumb: nil, provider: nil)
28
+ @key = key
29
+ @rating_key = rating_key
30
+ @selected = selected
31
+ @thumb = thumb
32
+ @provider = provider
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,24 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class GetMediaArtsRequest < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # the id of the library item to return the artwork of.
15
+ field :rating_key, ::Integer, { 'path_param': { 'field_name': 'ratingKey', 'style': 'simple', 'explode': false } }
16
+
17
+
18
+ sig { params(rating_key: ::Integer).void }
19
+ def initialize(rating_key: nil)
20
+ @rating_key = rating_key
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class GetMediaArtsResponse < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+ # Raw HTTP response; suitable for custom response parsing
17
+ field :raw_response, ::Faraday::Response
18
+ # HTTP response status code for this operation
19
+ field :status_code, ::Integer
20
+ # The available background artwork for the library item.
21
+ field :object, T.nilable(::PlexRubySDK::Operations::GetMediaArtsResponseBody)
22
+
23
+
24
+ sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, object: T.nilable(::PlexRubySDK::Operations::GetMediaArtsResponseBody)).void }
25
+ def initialize(content_type: nil, raw_response: nil, status_code: nil, object: nil)
26
+ @content_type = content_type
27
+ @raw_response = raw_response
28
+ @status_code = status_code
29
+ @object = object
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,24 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+ # The available background artwork for the library item.
11
+ class GetMediaArtsResponseBody < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :media_container, T.nilable(::PlexRubySDK::Operations::GetMediaArtsMediaContainer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } }
16
+
17
+
18
+ sig { params(media_container: T.nilable(::PlexRubySDK::Operations::GetMediaArtsMediaContainer)).void }
19
+ def initialize(media_container: nil)
20
+ @media_container = media_container
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class GetMediaPostersMediaContainer < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # An plugin identifier for the media container.
15
+ field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
16
+ # The prefix used for media tag resource paths.
17
+ field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
18
+ # The version number for media tags.
19
+ field :media_tag_version, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
20
+
21
+ field :metadata, T::Array[::PlexRubySDK::Operations::GetMediaPostersMetadata], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
22
+ # Number of media items returned in this response.
23
+ field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
24
+
25
+
26
+ sig { params(identifier: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, metadata: T::Array[::PlexRubySDK::Operations::GetMediaPostersMetadata], size: ::Integer).void }
27
+ def initialize(identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, size: nil)
28
+ @identifier = identifier
29
+ @media_tag_prefix = media_tag_prefix
30
+ @media_tag_version = media_tag_version
31
+ @metadata = metadata
32
+ @size = size
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class GetMediaPostersMetadata < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The URL of the poster.
15
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
16
+ # The URL of the poster.
17
+ field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
18
+ # Whether this is the selected poster.
19
+ field :selected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('selected') } }
20
+ # The URL of the poster thumbnail.
21
+ field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
22
+ # The provider of the poster.
23
+ field :provider, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('provider') } }
24
+
25
+
26
+ sig { params(key: ::String, rating_key: ::String, selected: T::Boolean, thumb: ::String, provider: T.nilable(::String)).void }
27
+ def initialize(key: nil, rating_key: nil, selected: nil, thumb: nil, provider: nil)
28
+ @key = key
29
+ @rating_key = rating_key
30
+ @selected = selected
31
+ @thumb = thumb
32
+ @provider = provider
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,24 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class GetMediaPostersRequest < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # the id of the library item to return the posters of.
15
+ field :rating_key, ::Integer, { 'path_param': { 'field_name': 'ratingKey', 'style': 'simple', 'explode': false } }
16
+
17
+
18
+ sig { params(rating_key: ::Integer).void }
19
+ def initialize(rating_key: nil)
20
+ @rating_key = rating_key
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class GetMediaPostersResponse < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+ # Raw HTTP response; suitable for custom response parsing
17
+ field :raw_response, ::Faraday::Response
18
+ # HTTP response status code for this operation
19
+ field :status_code, ::Integer
20
+ # The available posters for the library item.
21
+ field :object, T.nilable(::PlexRubySDK::Operations::GetMediaPostersResponseBody)
22
+
23
+
24
+ sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, object: T.nilable(::PlexRubySDK::Operations::GetMediaPostersResponseBody)).void }
25
+ def initialize(content_type: nil, raw_response: nil, status_code: nil, object: nil)
26
+ @content_type = content_type
27
+ @raw_response = raw_response
28
+ @status_code = status_code
29
+ @object = object
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,24 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+ # The available posters for the library item.
11
+ class GetMediaPostersResponseBody < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :media_container, T.nilable(::PlexRubySDK::Operations::GetMediaPostersMediaContainer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } }
16
+
17
+
18
+ sig { params(media_container: T.nilable(::PlexRubySDK::Operations::GetMediaPostersMediaContainer)).void }
19
+ def initialize(media_container: nil)
20
+ @media_container = media_container
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,30 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class PostMediaArtsRequest < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # the id of the library item to return the posters of.
15
+ field :rating_key, ::Integer, { 'path_param': { 'field_name': 'ratingKey', 'style': 'simple', 'explode': false } }
16
+ # The contents of the image, if uploading a local file
17
+ field :request_body, T.nilable(::String), { 'request': { 'media_type': 'image/*' } }
18
+ # The URL of the image, if uploading a remote image
19
+ field :url, T.nilable(::String), { 'query_param': { 'field_name': 'url', 'style': 'form', 'explode': true } }
20
+
21
+
22
+ sig { params(rating_key: ::Integer, request_body: T.nilable(::String), url: T.nilable(::String)).void }
23
+ def initialize(rating_key: nil, request_body: nil, url: nil)
24
+ @rating_key = rating_key
25
+ @request_body = request_body
26
+ @url = url
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class PostMediaArtsResponse < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+ # Raw HTTP response; suitable for custom response parsing
17
+ field :raw_response, ::Faraday::Response
18
+ # HTTP response status code for this operation
19
+ field :status_code, ::Integer
20
+
21
+
22
+ sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer).void }
23
+ def initialize(content_type: nil, raw_response: nil, status_code: nil)
24
+ @content_type = content_type
25
+ @raw_response = raw_response
26
+ @status_code = status_code
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class PostMediaPosterRequest < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # the id of the library item to return the posters of.
15
+ field :rating_key, ::Integer, { 'path_param': { 'field_name': 'ratingKey', 'style': 'simple', 'explode': false } }
16
+ # The contents of the image, if uploading a local file
17
+ field :request_body, T.nilable(::String), { 'request': { 'media_type': 'image/*' } }
18
+ # The URL of the image, if uploading a remote image
19
+ field :url, T.nilable(::String), { 'query_param': { 'field_name': 'url', 'style': 'form', 'explode': true } }
20
+
21
+
22
+ sig { params(rating_key: ::Integer, request_body: T.nilable(::String), url: T.nilable(::String)).void }
23
+ def initialize(rating_key: nil, request_body: nil, url: nil)
24
+ @rating_key = rating_key
25
+ @request_body = request_body
26
+ @url = url
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Operations
9
+
10
+
11
+ class PostMediaPosterResponse < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+ # Raw HTTP response; suitable for custom response parsing
17
+ field :raw_response, ::Faraday::Response
18
+ # HTTP response status code for this operation
19
+ field :status_code, ::Integer
20
+
21
+
22
+ sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer).void }
23
+ def initialize(content_type: nil, raw_response: nil, status_code: nil)
24
+ @content_type = content_type
25
+ @raw_response = raw_response
26
+ @status_code = status_code
27
+ end
28
+ end
29
+ end
30
+ end
@@ -574,6 +574,20 @@ module PlexRubySDK
574
574
  autoload :GetMediaMetaDataMediaContainer, 'plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb'
575
575
  autoload :GetMediaMetaDataResponseBody, 'plex_ruby_sdk/models/operations/get_media_meta_data_responsebody.rb'
576
576
  autoload :GetMediaMetaDataResponse, 'plex_ruby_sdk/models/operations/get_media_meta_data_response.rb'
577
+ autoload :GetMediaArtsRequest, 'plex_ruby_sdk/models/operations/get_media_arts_request.rb'
578
+ autoload :GetMediaArtsMetadata, 'plex_ruby_sdk/models/operations/get_media_arts_metadata.rb'
579
+ autoload :GetMediaArtsMediaContainer, 'plex_ruby_sdk/models/operations/get_media_arts_mediacontainer.rb'
580
+ autoload :GetMediaArtsResponseBody, 'plex_ruby_sdk/models/operations/get_media_arts_responsebody.rb'
581
+ autoload :GetMediaArtsResponse, 'plex_ruby_sdk/models/operations/get_media_arts_response.rb'
582
+ autoload :PostMediaArtsRequest, 'plex_ruby_sdk/models/operations/post_media_arts_request.rb'
583
+ autoload :PostMediaArtsResponse, 'plex_ruby_sdk/models/operations/post_media_arts_response.rb'
584
+ autoload :GetMediaPostersRequest, 'plex_ruby_sdk/models/operations/get_media_posters_request.rb'
585
+ autoload :GetMediaPostersMetadata, 'plex_ruby_sdk/models/operations/get_media_posters_metadata.rb'
586
+ autoload :GetMediaPostersMediaContainer, 'plex_ruby_sdk/models/operations/get_media_posters_mediacontainer.rb'
587
+ autoload :GetMediaPostersResponseBody, 'plex_ruby_sdk/models/operations/get_media_posters_responsebody.rb'
588
+ autoload :GetMediaPostersResponse, 'plex_ruby_sdk/models/operations/get_media_posters_response.rb'
589
+ autoload :PostMediaPosterRequest, 'plex_ruby_sdk/models/operations/post_media_poster_request.rb'
590
+ autoload :PostMediaPosterResponse, 'plex_ruby_sdk/models/operations/post_media_poster_response.rb'
577
591
  autoload :GetMetadataChildrenRequest, 'plex_ruby_sdk/models/operations/getmetadatachildren_request.rb'
578
592
  autoload :GetMetadataChildrenLibraryErrors, 'plex_ruby_sdk/models/operations/getmetadatachildren_library_errors.rb'
579
593
  autoload :GetMetadataChildrenUnauthorized, 'plex_ruby_sdk/models/operations/getmetadatachildren_unauthorized.rb'
@@ -64,9 +64,9 @@ module PlexRubySDK
64
64
  end
65
65
  @language = 'ruby'
66
66
  @openapi_doc_version = '0.0.3'
67
- @sdk_version = '0.8.0'
68
- @gen_version = '2.563.1'
69
- @user_agent = 'speakeasy-sdk/ruby 0.8.0 2.563.1 0.0.3 plex_ruby_sdk'
67
+ @sdk_version = '0.8.1'
68
+ @gen_version = '2.565.1'
69
+ @user_agent = 'speakeasy-sdk/ruby 0.8.1 2.565.1 0.0.3 plex_ruby_sdk'
70
70
  end
71
71
 
72
72
  sig { returns([String, T::Hash[Symbol, String]]) }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: plex_ruby_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - LukeHagar
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-03-31 00:00:00.000000000 Z
11
+ date: 2025-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -432,6 +432,11 @@ files:
432
432
  - lib/plex_ruby_sdk/models/operations/get_library_items_ultrablurcolors.rb
433
433
  - lib/plex_ruby_sdk/models/operations/get_library_items_unauthorized.rb
434
434
  - lib/plex_ruby_sdk/models/operations/get_library_items_writer.rb
435
+ - lib/plex_ruby_sdk/models/operations/get_media_arts_mediacontainer.rb
436
+ - lib/plex_ruby_sdk/models/operations/get_media_arts_metadata.rb
437
+ - lib/plex_ruby_sdk/models/operations/get_media_arts_request.rb
438
+ - lib/plex_ruby_sdk/models/operations/get_media_arts_response.rb
439
+ - lib/plex_ruby_sdk/models/operations/get_media_arts_responsebody.rb
435
440
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_badrequest.rb
436
441
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb
437
442
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb
@@ -456,6 +461,11 @@ files:
456
461
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb
457
462
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_unauthorized.rb
458
463
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb
464
+ - lib/plex_ruby_sdk/models/operations/get_media_posters_mediacontainer.rb
465
+ - lib/plex_ruby_sdk/models/operations/get_media_posters_metadata.rb
466
+ - lib/plex_ruby_sdk/models/operations/get_media_posters_request.rb
467
+ - lib/plex_ruby_sdk/models/operations/get_media_posters_response.rb
468
+ - lib/plex_ruby_sdk/models/operations/get_media_posters_responsebody.rb
459
469
  - lib/plex_ruby_sdk/models/operations/get_media_providers_badrequest.rb
460
470
  - lib/plex_ruby_sdk/models/operations/get_media_providers_directory.rb
461
471
  - lib/plex_ruby_sdk/models/operations/get_media_providers_errors.rb
@@ -949,6 +959,10 @@ files:
949
959
  - lib/plex_ruby_sdk/models/operations/player.rb
950
960
  - lib/plex_ruby_sdk/models/operations/playlisttype.rb
951
961
  - lib/plex_ruby_sdk/models/operations/plexdevice.rb
962
+ - lib/plex_ruby_sdk/models/operations/post_media_arts_request.rb
963
+ - lib/plex_ruby_sdk/models/operations/post_media_arts_response.rb
964
+ - lib/plex_ruby_sdk/models/operations/post_media_poster_request.rb
965
+ - lib/plex_ruby_sdk/models/operations/post_media_poster_response.rb
952
966
  - lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_authentication_errors.rb
953
967
  - lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_authentication_response_status.rb
954
968
  - lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_authentication_status.rb