basecamp-sdk 0.21.0 → 0.22.0

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: 7b16ed47ffa033dcc0c642c37ebc51a4bc6552fa06a088fd268cb451fa09e2f8
4
- data.tar.gz: 48c691a48f55cc68f9d3d5208488c8baecb56264a230614a22e6b7746d8a7451
3
+ metadata.gz: 92bdbb7967efe2d02dd1d5e007c1d52c22d241be8b067e4ec633bfe3209fb496
4
+ data.tar.gz: b1de8569bed78718e03a54aa34df54143d81ddc6c7e73d77f63e97d64e21adbc
5
5
  SHA512:
6
- metadata.gz: 20f3979bfb268ce78303e4b10aadb50194a4b20818876a076753560260f54d70a9cbd42851a7a4337cdefc316a1800f6d4088437cd68994a684b2e9f60b2d016
7
- data.tar.gz: 88bb6d1ec5889506b6f24660ce919befa780057f37587143526d524286d6fcd1d098aed95971f136400cfc1ab65656f28ea9f605c24ac543c5f9f0c02474fd74
6
+ metadata.gz: 9de61285d797588afab159d64e44cbb38f058bddf1a08734d68eeb24c5baa9703e89e88eb12a48a06618b766f8c010ee9206e13ae5ea11941a6087ce368000a6
7
+ data.tar.gz: fccb795b1aa3901a705550a5f4c5054e33b0a2c9e316acd01ade37e95e343cf2a33784f23368c4c41fa88a2618b480f9aa38c23e4adc1e27dc3945d68c43cae4
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://basecamp.com/schemas/sdk-metadata.json",
3
3
  "version": "1.0.0",
4
- "generated": "2026-09-30T18:52:50Z",
4
+ "generated": "2026-10-03T00:10:53Z",
5
5
  "operations": {
6
6
  "GetAccount": {
7
7
  "retry": {
@@ -2388,6 +2388,17 @@
2388
2388
  ]
2389
2389
  }
2390
2390
  },
2391
+ "MoveRecordingToVault": {
2392
+ "retry": {
2393
+ "maxAttempts": 2,
2394
+ "baseDelayMs": 1000,
2395
+ "backoff": "exponential",
2396
+ "retryOn": [
2397
+ 429,
2398
+ 503
2399
+ ]
2400
+ }
2401
+ },
2391
2402
  "SpotlightRecording": {
2392
2403
  "retry": {
2393
2404
  "maxAttempts": 3,
@@ -141,12 +141,13 @@ module Basecamp
141
141
 
142
142
  # Update notification settings for a check-in question
143
143
  # @param question_id [Integer] question id ID
144
- # @param notify_on_answer [Boolean, nil] Notify when someone answers
145
- # @param digest_include_unanswered [Boolean, nil] Include unanswered in digest
144
+ # @param responding [Boolean, nil] Whether the authenticated user is asked this question. Omit to leave it unchanged.
145
+ # Turning it on also subscribes the user unless `subscribed: false` is sent with it.
146
+ # @param subscribed [Boolean, nil] Whether the authenticated user is notified when someone answers. Omit to leave it unchanged.
146
147
  # @return [Hash] response data
147
- def update_notification_settings(question_id:, notify_on_answer: nil, digest_include_unanswered: nil)
148
+ def update_notification_settings(question_id:, responding: nil, subscribed: nil)
148
149
  with_operation(service: "checkins", operation: "update_notification_settings", is_mutation: true, resource_id: question_id) do
149
- http_put("/questions/#{question_id}/notification_settings.json", body: compact_params(notify_on_answer: notify_on_answer, digest_include_unanswered: digest_include_unanswered)).json(operation: "UpdateQuestionNotificationSettings")
150
+ http_put("/questions/#{question_id}/notification_settings.json", body: compact_params(responding: responding, subscribed: subscribed)).json(operation: "UpdateQuestionNotificationSettings")
150
151
  end
151
152
  end
152
153
 
@@ -23,6 +23,20 @@ module Basecamp
23
23
  end
24
24
  end
25
25
 
26
+ # Move a document, upload or vault into another vault in its project, or reorder it in its own vault.
27
+ # @param recording_id [Integer] recording id ID
28
+ # @param parent_id [Integer] The destination vault. The recording's current vault keeps it where it is
29
+ # and changes only its position.
30
+ # @param position [Integer, nil] 1-indexed position within the destination vault. Defaults to 1 (first); a
31
+ # position past the end places it last.
32
+ # @return [void]
33
+ def move_to_vault(recording_id:, parent_id:, position: nil)
34
+ with_operation(service: "recordings", operation: "move_to_vault", is_mutation: true, resource_id: recording_id) do
35
+ http_post("/recordings/#{recording_id}/filing.json", body: compact_params(parent_id: parent_id, position: position))
36
+ nil
37
+ end
38
+ end
39
+
26
40
  # Put a recording's card in the spotlight area on its project or template home page.
27
41
  # @param recording_id [Integer] recording id ID
28
42
  # @return [Hash] response data
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Auto-generated from OpenAPI spec. Do not edit manually.
4
- # Generated: 2026-09-30T18:52:50Z
4
+ # Generated: 2026-10-03T00:10:53Z
5
5
 
6
6
  require "json"
7
7
  require "time"
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Basecamp
4
- VERSION = "0.21.0"
4
+ VERSION = "0.22.0"
5
5
  API_VERSION = "2026-09-15"
6
6
  end
@@ -179,6 +179,7 @@ class ServiceGenerator
179
179
  METHOD_NAME_OVERRIDES = {
180
180
  'SpotlightRecording' => 'spotlight',
181
181
  'UnspotlightRecording' => 'unspotlight',
182
+ 'MoveRecordingToVault' => 'move_to_vault',
182
183
  'GetMyProfile' => 'my_profile',
183
184
  'GetTodolistOrGroup' => 'get',
184
185
  # The plain `update` name belongs to the merge-safe composite; the raw
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: basecamp-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.21.0
4
+ version: 0.22.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Basecamp
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-30 00:00:00.000000000 Z
11
+ date: 2026-10-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday