Class: Onlyfans::Resources::Media
- Inherits:
-
Object
- Object
- Onlyfans::Resources::Media
- Defined in:
- lib/onlyfans/resources/media.rb,
lib/onlyfans/resources/media/vault.rb,
lib/onlyfans/resources/media/uploads.rb,
lib/onlyfans/resources/media/vault/lists.rb,
lib/onlyfans/resources/media/vault/lists/media.rb
Defined Under Namespace
Instance Attribute Summary collapse
- #uploads ⇒ Onlyfans::Resources::Media::Uploads readonly
- #vault ⇒ Onlyfans::Resources::Media::Vault readonly
Instance Method Summary collapse
-
#download(cdn_url, account:, request_options: {}) ⇒ String
Some parameter documentations has been truncated, see Models::MediaDownloadParams for more details.
-
#initialize(client:) ⇒ Media
constructor
private
A new instance of Media.
-
#scrape(account, expiration_date: nil, file_type: nil, media_id: nil, public: nil, url: nil, request_options: {}) ⇒ Onlyfans::Models::MediaScrapeResponse
Some parameter documentations has been truncated, see Models::MediaScrapeParams for more details.
-
#upload(account, async: nil, file: nil, file_url: nil, type: nil, request_options: {}) ⇒ Onlyfans::Models::MediaUploadResponse
Some parameter documentations has been truncated, see Models::MediaUploadParams for more details.
Constructor Details
#initialize(client:) ⇒ Media
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Media.
125 126 127 128 129 |
# File 'lib/onlyfans/resources/media.rb', line 125 def initialize(client:) @client = client @uploads = Onlyfans::Resources::Media::Uploads.new(client: client) @vault = Onlyfans::Resources::Media::Vault.new(client: client) end |
Instance Attribute Details
#uploads ⇒ Onlyfans::Resources::Media::Uploads (readonly)
7 8 9 |
# File 'lib/onlyfans/resources/media.rb', line 7 def uploads @uploads end |
#vault ⇒ Onlyfans::Resources::Media::Vault (readonly)
10 11 12 |
# File 'lib/onlyfans/resources/media.rb', line 10 def vault @vault end |
Instance Method Details
#download(cdn_url, account:, request_options: {}) ⇒ String
Some parameter documentations has been truncated, see Models::MediaDownloadParams for more details.
Downloads a file directly from a ‘cdn*.onlyfans.com/*` URL. When the file is already cached on our CDN, this endpoint returns a `302` redirect to a `cdn.fansapi.com/*` URL. Most HTTP clients follow redirects automatically (`curl` requires `-L`). Otherwise, the file is streamed through our proxies and queued for caching.
expire
33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/onlyfans/resources/media.rb', line 33 def download(cdn_url, params) parsed, = Onlyfans::MediaDownloadParams.dump_request(params) account = parsed.delete(:account) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :get, path: ["api/%1$s/media/download/%2$s", account, cdn_url], headers: {"accept" => "text/plain"}, model: String, options: ) end |
#scrape(account, expiration_date: nil, file_type: nil, media_id: nil, public: nil, url: nil, request_options: {}) ⇒ Onlyfans::Models::MediaScrapeResponse
Some parameter documentations has been truncated, see Models::MediaScrapeParams for more details.
**⚠️ This is a deprecated endpoint. Please use the new “Download media from the OnlyFans CDN” endpoint!** Scrapes a ‘cdn*.onlyfans.com/*` URL or Vault Media ID, and uploads it to the OnlyFans API CDN, where you can view or download the file. **Max file size is 500MB**
75 76 77 78 79 80 81 82 83 84 |
# File 'lib/onlyfans/resources/media.rb', line 75 def scrape(account, params = {}) parsed, = Onlyfans::MediaScrapeParams.dump_request(params) @client.request( method: :post, path: ["api/%1$s/media/scrape", account], body: parsed, model: Onlyfans::Models::MediaScrapeResponse, options: ) end |
#upload(account, async: nil, file: nil, file_url: nil, type: nil, request_options: {}) ⇒ Onlyfans::Models::MediaUploadResponse
Some parameter documentations has been truncated, see Models::MediaUploadParams for more details.
The response can be used **only once** to manually include media in a post or message. This endpoint does not upload media to the Vault. You must provide either ‘file` or `file_url`.
110 111 112 113 114 115 116 117 118 119 120 |
# File 'lib/onlyfans/resources/media.rb', line 110 def upload(account, params = {}) parsed, = Onlyfans::MediaUploadParams.dump_request(params) @client.request( method: :post, path: ["api/%1$s/media/upload", account], headers: {"content-type" => "multipart/form-data"}, body: parsed, model: Onlyfans::Models::MediaUploadResponse, options: ) end |