Class: Basecamp::Services::DocumentsService
- Inherits:
-
BaseService
- Object
- BaseService
- Basecamp::Services::DocumentsService
- Defined in:
- lib/basecamp/generated/services/documents_service.rb
Overview
Service for Documents operations
Instance Method Summary collapse
-
#create(vault_id:, title:, content: nil, status: nil, subscriptions: nil, visible_to_clients: nil) ⇒ Hash
Create a new document in a vault.
-
#get(document_id:) ⇒ Hash
Get a single document by id.
-
#list(vault_id:, page: nil, max_items: nil) ⇒ ListEnumerator<Hash>
List documents in a vault.
-
#replace(document_id:, title: nil, content: nil) ⇒ Hash
Replace a document with a new complete representation.
Constructor Details
This class inherits a constructor from Basecamp::Services::BaseService
Instance Method Details
#create(vault_id:, title:, content: nil, status: nil, subscriptions: nil, visible_to_clients: nil) ⇒ Hash
Create a new document in a vault
50 51 52 53 54 |
# File 'lib/basecamp/generated/services/documents_service.rb', line 50 def create(vault_id:, title:, content: nil, status: nil, subscriptions: nil, visible_to_clients: nil) with_operation(service: "documents", operation: "create", is_mutation: true, resource_id: vault_id) do http_post("/vaults/#{vault_id}/documents.json", body: compact_params(title: title, content: content, status: status, subscriptions: subscriptions, visible_to_clients: visible_to_clients)).json end end |
#get(document_id:) ⇒ Hash
Get a single document by id
13 14 15 16 17 |
# File 'lib/basecamp/generated/services/documents_service.rb', line 13 def get(document_id:) with_operation(service: "documents", operation: "get", is_mutation: false, resource_id: document_id) do http_get("/documents/#{document_id}", operation: "GetDocument").json end end |
#list(vault_id:, page: nil, max_items: nil) ⇒ ListEnumerator<Hash>
List documents in a vault
35 36 37 38 39 40 |
# File 'lib/basecamp/generated/services/documents_service.rb', line 35 def list(vault_id:, page: nil, max_items: nil) wrap_paginated(service: "documents", operation: "list", is_mutation: false, resource_id: vault_id) do params = compact_query_params(page: page) paginate("/vaults/#{vault_id}/documents.json", params: params, operation: "ListDocuments", max_items: max_items) end end |
#replace(document_id:, title: nil, content: nil) ⇒ Hash
Replace a document with a new complete representation.
24 25 26 27 28 |
# File 'lib/basecamp/generated/services/documents_service.rb', line 24 def replace(document_id:, title: nil, content: nil) with_operation(service: "documents", operation: "replace", is_mutation: true, resource_id: document_id) do http_put("/documents/#{document_id}", body: compact_params(title: title, content: content)).json end end |