Class: Inttegro::Resources::UploadRequests
- Inherits:
-
Object
- Object
- Inttegro::Resources::UploadRequests
- Defined in:
- lib/inttegro/resources/upload_requests.rb
Overview
Client for delegated, policy-constrained file uploads.
Access this resource through Client#upload_requests. Management methods use the client's API key; #fulfill uses the public capability URL and is intentionally unauthenticated.
Instance Method Summary collapse
-
#cancel(payload, idempotency_key: nil) ⇒ Inttegro::UploadRequest
Cancel an active delegated upload request.
-
#create(payload, idempotency_key: nil) ⇒ Inttegro::UploadRequest
Create a delegated upload request.
-
#fulfill(upload_url:, file:) ⇒ Inttegro::Shared::UploadFulfillment
Submit a file through the public delegated-upload capability URL.
-
#initialize(http) ⇒ UploadRequests
constructor
A new instance of UploadRequests.
-
#lookup(id:) ⇒ Inttegro::UploadRequest::Details
Retrieve an upload request and its current attempt details.
-
#page(payload = {}) ⇒ Inttegro::UploadRequest::Page
Retrieve a page of upload requests.
-
#review(payload, idempotency_key: nil) ⇒ Inttegro::UploadRequest::Details
Record a manual approval or rejection for a submitted upload attempt.
Constructor Details
#initialize(http) ⇒ UploadRequests
Returns a new instance of UploadRequests.
12 13 14 |
# File 'lib/inttegro/resources/upload_requests.rb', line 12 def initialize(http) @http = T.let(http, Inttegro::HTTPClient) end |
Instance Method Details
#cancel(payload, idempotency_key: nil) ⇒ Inttegro::UploadRequest
Cancel an active delegated upload request.
55 56 57 58 59 60 61 62 |
# File 'lib/inttegro/resources/upload_requests.rb', line 55 def cancel(payload, idempotency_key: nil) @http.post_resource( "/upload_requests/cancel", Inttegro::UploadRequest, :upload_request, payload, headers: headers(idempotency_key) ) end |
#create(payload, idempotency_key: nil) ⇒ Inttegro::UploadRequest
Create a delegated upload request.
21 22 23 24 25 26 27 28 |
# File 'lib/inttegro/resources/upload_requests.rb', line 21 def create(payload, idempotency_key: nil) @http.post_resource( "/upload_requests/create", Inttegro::UploadRequest, :upload_request, payload, headers: headers(idempotency_key) ) end |
#fulfill(upload_url:, file:) ⇒ Inttegro::Shared::UploadFulfillment
Submit a file through the public delegated-upload capability URL.
83 84 85 86 87 88 89 90 91 |
# File 'lib/inttegro/resources/upload_requests.rb', line 83 def fulfill(upload_url:, file:) @http.post_multipart_model( upload_url, Inttegro::Shared::UploadFulfillment, files: { file: file }, authenticated: false, operation: "upload_requests.upload" ) end |
#lookup(id:) ⇒ Inttegro::UploadRequest::Details
Retrieve an upload request and its current attempt details.
34 35 36 37 38 39 40 |
# File 'lib/inttegro/resources/upload_requests.rb', line 34 def lookup(id:) @http.post_resource( "/upload_requests/lookup", Inttegro::UploadRequest::Details, :upload_request, { id: id } ) end |
#page(payload = {}) ⇒ Inttegro::UploadRequest::Page
Retrieve a page of upload requests.
46 47 48 |
# File 'lib/inttegro/resources/upload_requests.rb', line 46 def page(payload = {}) @http.post_resource("/upload_requests/page", Inttegro::UploadRequest::Page, :page, payload || {}) end |
#review(payload, idempotency_key: nil) ⇒ Inttegro::UploadRequest::Details
Record a manual approval or rejection for a submitted upload attempt.
69 70 71 72 73 74 75 76 |
# File 'lib/inttegro/resources/upload_requests.rb', line 69 def review(payload, idempotency_key: nil) @http.post_resource( "/upload_requests/review", Inttegro::UploadRequest::Details, :upload_request, payload, headers: headers(idempotency_key) ) end |